User familiarization with a novel route for reducing cognitive load associated with navigation

ABSTRACT

Navigation data is received. The navigation data comprises a plurality of point of interest (POI) models. Each POI model is a representation of a POI. At least a portion of the plurality of POI models are analyzed based on a data extraction model to determine a link between two or more POIs based on POI models corresponding to the two or more POIs. The two or more POIs are located within a predefined distance of one another. An entity of interest (EOI) model is generated based on the POI models corresponding to the two or more POIs, the determined link, and the data extraction model. The EOI model is stored for use in performing one or more navigation functions.

TECHNOLOGICAL FIELD

An example embodiment relates generally to reducing the cognitive loadof a user navigating a route. An example embodiment relates generally togenerating and providing optimum familiarization content to a user.

BACKGROUND

Navigating an unfamiliar route is often stressful. For example, if anintersection is an all-way stop intersection, but is not clearly markedas such, a user that is unfamiliar with the intersection may findnavigating through the intersection to be stressful. For example, thecognitive load on an individual (e.g., a human operator/driver of anautomobile or other vehicle) when navigating an unfamiliar route may bequite high compared to when navigating a familiar route. The demand ofcognitive resources for the primary task (e.g., operating/driving anautomobile or other vehicle) may be compromised by the allocation ofmore cognitive resources for navigating the unfamiliar route. Therefore,a user's unfamiliarity with a route may cause the user stress whennavigating the unfamiliar route and may negatively affect the user'sability to efficiently navigate the unfamiliar route.

BRIEF SUMMARY OF SOME EXAMPLE EMBODIMENTS

Various embodiments provide methods, systems, apparatuses, and computerprogram products for generating and providing familiarization content toa user navigating a route. For example, familiarization content may beprovided to a user navigating an unfamiliar and/or novel route. Variousembodiments provide methods, systems, apparatuses, and computer programproducts that generate and/or make use of entities of interest (EOIs)based on static and/or dynamic (e.g., time dependent) information/dataregarding a related and/or linked set of two or more points of interest(POIs). Various embodiments provide a human cognitive navigation modelthat may be used to identify portions of a navigation route that maycorrespond to an increased cognitive load for a human operator/drivernavigating the navigation route. For example, in an example embodiment,if a navigation system determines that a user has requested routeinformation/data for navigating an unfamiliar and/or novel route, anavigation engine may provide route information/data to an extractionengine that identifies high cognitive load portions of the route (e.g.,portions of the route that are expected to cause a user to have anincreased cognitive load while the user navigates the portion of theroute) based on a cognitive navigation model configured to model humancognitive processing of navigation processes. The cognitive navigationmodel may also receive configuration information/data such asinformation/data regarding the user (e.g., operating/driving experiencelevel, number of years operating/driving, user preferences, and/or thelike) and POI and/or EOI information/data for one or more POIs and/orEOIs located along the route. In an example embodiment, the cognitivenavigation model provides scenario information/data and/or scenariotemplates for use in identifying and/or determining portions of theroute that are likely to cause the user stress and/or are likely toincrease the user's cognitive load while navigating those portions ofthe route. The extraction engine may then generates and/or extractsfamiliarization information/data comprising familiarization contentregarding the identified and/or determined portions of the route. In anexample embodiment, the familiarization information/data correspondingto a high cognitive load portion is generated and/or extracted from theroute information/data based at least in part on the scenarioinformation/data and/or scenario template used to identify the highcognitive load portion. A vehicle apparatus onboard the vehicle beingoperated and/or driven by the user may then provide the familiarizationcontent to the user at appropriate points and/or times as the usernavigates the route in an efficient way.

In various embodiments, an EOI is an entity generated by linking two ormore POIs. In various embodiments, the linking between the two or morePOIs may be dynamic and/or time dependent. For example, an EOI may begenerated by linking a school, an ice cream shop near the school, and across walk between the school and the ice cream shop. The POIinformation/data corresponding to the school may indicate the time theschool day begins and/or ends (e.g., 8 am to 3 pm) and may also indicatedays on which the school is open or is not open (weekends, holidays,breaks, and/or the like). The POI information/data corresponding to theice cream shop may indicate the hours that the ice cream shop is open(e.g., that the ice cream shop is open from 2 pm to 8 pm). In an exampleembodiment, the EOI information/data may indicate that the EOI is onlyrelevant between 3 pm and 8 pm on days that the school is open. In anexample embodiment, the EOI information/data may further indicate thecurrent status of a walk signal located at the cross walk. For example,the EOI information/data may comprise (near) real-time information/datacorresponding to the status of a walk signal at the cross walk shortlybefore the user arrives at the cross walk. In various embodiments, EOIsmay be generated using an EOI model and/or other data extraction modelthat takes into account POI information/data (static and/or dynamic),map information/data (e.g., via a geographic database, one more maplayers, and/or the like), operating/driving effort information/data,weather information/data, current and/or historical trafficinformation/data, (near) real-time traffic system information/data,and/or the like. In various embodiments, two or more POIs may be linkedthrough a logical relationship and may be grouped together to form anEOI based on logical rules.

In various embodiments, a high cognitive load model is configured todetermine and/or identify navigation scenarios that are likely and/orexpected to cause an increased cognitive load for a individual user,class of users, and/or users in general. In an example embodiment, thehigh cognitive load model is a human cognitive navigation modelconfigured for modeling human cognitive processing in various navigationscenarios. In an example embodiment, the cognitive navigation model istrained using navigation information/data, user behaviorinformation/data, and/or feedback directly from one or more users (e.g.,a user questionnaire). In an example embodiment, the cognitivenavigation model is trained using machine learning with support from amachine learning engine. In an example embodiment, the high cognitiveload model is configured to provide scenarios information/data and/orscenario templates configured for use in identifying high cognitive loadportions of a route based on the route information/data for the route.In an example embodiment, the cognitive navigation model is configuredto provide scenarios information/data and/or scenario templates thatprovide an indication of the familiarization information/data to begenerated, determined, and/or extracted for a high cognitive loadportion. For example, an instance of scenario information/data and/or ascenario template may indicate the content (e.g., text, graphics, and/orthe like), form, and/or the like of familiarization content to begenerated, determined, and/or extracted for a high cognitive loadportion.

As should be understood, various embodiments of the present inventionprovide improvements to navigation and/or routing technologies andcorresponding interactive user interfaces (IUIs). For example, invarious embodiments, an improved IUI is provided wherein a user mayprovide input regarding a particular trip (e.g., provide inputindicating a destination location) and be provided with not only anoverview and/or turn-by-turn instructions for a route to the destinationlocation, but appropriately timed familiarization content to decreasethe user's stress level and/or cognitive load as the user navigates theroute. For example, various embodiments are configured to provide a userwith improved, (near) real-time accurate route information/data and/orfamiliarization content. In various embodiments, the dynamic and/orstatic elements of an EOI may be used to identify high cognitive loadportions and/or to generate the corresponding familiarization content.For example, various embodiments provide a cognitive navigation modelthat enables the provision of appropriate and effective familiarizationcontent for portions of the route where providing familiarizationcontent is most helpful for a user.

In an example embodiment, new route information is received via anetwork apparatus comprising at least one processor, at least onememory, and at least one communications interface configured tocommunicate via at least one network. The new route informationcomprises an origin location, a destination location, and a time. Aroute is determined based on the new route information via the networkapparatus. Route data corresponding to the route is analyzed via thenetwork apparatus based on a high cognitive load model to identify oneor more high cognitive load portions of the route, the route datacomprising at least one of (a) point of interest (POI) data, (b) entityof interest (EOI) data, or (c) roadway data. Familiarization informationis generated via the network apparatus for at least one of the one ormore high cognitive load portions. The familiarization informationcomprises (a) familiarization content and (b) a trigger point. Thefamiliarization content is configured to be provided to a user via auser interface of a vehicle apparatus when, based at least in part on alocation sensor of the vehicle apparatus, it is determined that thevehicle apparatus has reached the trigger point. The familiarizationinformation is provided via the network apparatus to the vehicleapparatus.

In accordance with an aspect of the present invention, a method forproviding a familiarization information/data is provided. In an exampleembodiment, the method comprises receiving, via a network apparatuscomprising at least one processor, at least one memory, and at least onecommunications interface configured to communicate via at least onenetwork, new route information. The new route information comprising anorigin location, a destination location, and a time. In an exampleembodiment, the method further comprises determining, via the networkapparatus, a route based on the new route information; and analyzing,via the network apparatus, route data corresponding to the route basedon a high cognitive load model to identify one or more high cognitiveload portions of the route. The route data comprises at least one of (a)point of interest (POI) data, (b) entity of interest (EOI) data, or (c)roadway data. In an example embodiment, the method further comprisesgenerating, via the network apparatus, familiarization information forat least one of the one or more high cognitive load portions. Thefamiliarization information comprises (a) familiarization content and(b) a trigger point. The familiarization content is configured to beprovided to a user via a user interface of a vehicle apparatus when,based at least in part on a location sensor of the vehicle apparatus, itis determined that the vehicle apparatus has reached the trigger point.In an example embodiment, the method further comprises providing, viathe network apparatus, the familiarization information to the vehicleapparatus.

In an example embodiment, the method further comprises determining thatthe route is an unfamiliar route for the user wherein the route data isanalyzed responsive to determining that the route is an unfamiliar routefor the user. In an example embodiment, it is determined that the routeis an unfamiliar route for the user if a user profile corresponding tothe user indicates that at least one of the following is true (a) theuser has not previously navigated at least a portion of the route, (b)at least one scenario the user has not previously navigated is presenton the route, (c) the user has navigated the route less than a thresholdnumber of times, or (d) user preferences indicate the route should betreated as an unfamiliar route. In an example embodiment, an EOI isformed by linking two or more POIs. In an example embodiment, the POIdata or the EOI data comprises at least one dynamic element. In anexample embodiment, the analyzing of the route data is based at least inpart on the time and the at least one dynamic element. In an exampleembodiment, the familiarization information is generated based on thehigh cognitive load model. In an example embodiment, the high cognitiveload model is a cognitive navigation model. In an example embodiment,the high cognitive load model is configured to identify a high cognitiveload portion of the route and a high cognitive load portion is a portionof a route that is expected to cause the user an increased cognitiveload when the user navigates the portion of the route. In an exampleembodiment, the familiarization content is configured to reduce theuser's cognitive load as the user navigates the corresponding highcognitive load portion.

According to another aspect of the present invention, an apparatus isprovided. In an example embodiment, the apparatus comprises at least oneprocessor, at least one non-transitory memory storing computer programcode, and at least one communications interface configured tocommunicate via at least one network. The computer program code isconfigured to, when executed by the at least one processor, cause theapparatus to at least receive new route information; determine a routebased on the new route information; analyze route data corresponding tothe route based on a high cognitive load model to identify one or morehigh cognitive load portions of the route; generate familiarizationinformation for at least one of the one or more high cognitive loadportions; and provide the familiarization information to the vehicleapparatus. The new route information comprises an origin location, adestination location, and a time. The route data comprises at least oneof (a) point of interest (POI) data, (b) entity of interest (EOI) data,or (c) roadway data. The familiarization information comprises (a)familiarization content and (b) a trigger point. The familiarizationcontent is configured to be provided to a user via a user interface of avehicle apparatus when, based at least in part on a location sensor ofthe vehicle apparatus, it is determined that the vehicle apparatus hasreached the trigger point.

In an example embodiment, the computer program code is furtherconfigured to, when executed by the at least one processor, cause theapparatus to at least determine that the route is an unfamiliar routefor the user wherein the route data is analyzed responsive todetermining that the route is an unfamiliar route for the user. In anexample embodiment, it is determined that the route is an unfamiliarroute for the user if a user profile corresponding to the user indicatesthat at least one of the following is true (a) the user has notpreviously navigated at least a portion of the route, (b) at least onescenario the user has not previously navigated is present on the route,(c) the user has navigated the route less than a threshold number oftimes, or (d) user preferences indicate the route should be treated asan unfamiliar route. In an example embodiment, an EOI is formed bylinking two or more POIs. In an example embodiment, the POI data or theEOI data comprises at least one dynamic element. In an exampleembodiment, the analyzing of the route data is based at least in part onthe time and the at least one dynamic element. In an example embodiment,the familiarization information is generated based on the high cognitiveload model. In an example embodiment, the high cognitive load model is acognitive navigation model. In an example embodiment, the high cognitiveload model is configured to identify a high cognitive load portion ofthe route and a high cognitive load portion is a portion of a route thatis expected to cause the user an increased cognitive load when the usernavigates the portion of the route.

According to still another aspect of the present invention, a computerprogram product is provided. In an example embodiment, the computerprogram product comprising at least one non-transitory computer-readablestorage medium having computer-executable program code instructionsstored therein. The computer-executable program code instructionscomprise program code instructions configured to, when executed by aprocessor of an apparatus, cause the apparatus to at least receive newroute information; determine a route based on the new route information;analyze route data corresponding to the route based on a high cognitiveload model to identify one or more high cognitive load portions of theroute; generate familiarization information for at least one of the oneor more high cognitive load portions; and provide the familiarizationinformation to the vehicle apparatus. The new route informationcomprises an origin location, a destination location, and a time. Theroute data comprises at least one of (a) point of interest (POI) data,(b) entity of interest (EOI) data, or (c) roadway data. Thefamiliarization information comprises (a) familiarization content and(b) a trigger point. The familiarization content is configured to beprovided to a user via a user interface of a vehicle apparatus when,based at least in part on a location sensor of the vehicle apparatus, itis determined that the vehicle apparatus has reached the trigger point.

In an example embodiment, the computer-executable program codeinstructions further comprise program code instructions configured to,when executed by a processor of an apparatus, cause the apparatus to atleast determine that the route is an unfamiliar route for the userwherein the route data is analyzed responsive to determining that theroute is an unfamiliar route for the user. In an example embodiment, itis determined that the route is an unfamiliar route for the user if auser profile corresponding to the user indicates that at least one ofthe following is true (a) the user has not previously navigated at leasta portion of the route, (b) at least one scenario the user has notpreviously navigated is present on the route, (c) the user has navigatedthe route less than a threshold number of times, or (d) user preferencesindicate the route should be treated as an unfamiliar route. In anexample embodiment, an EOI is formed by linking two or more POIs. In anexample embodiment, the POI data or the EOI data comprises at least onedynamic element. In an example embodiment, the analyzing of the routedata is based at least in part on the time and the at least one dynamicelement. In an example embodiment, the familiarization information isgenerated based on the high cognitive load model. In an exampleembodiment, the high cognitive load model is a cognitive navigationmodel. In an example embodiment, the high cognitive load model isconfigured to identify a high cognitive load portion of the route and ahigh cognitive load portion is a portion of a route that is expected tocause the user an increased cognitive load when the user navigates theportion of the route.

In accordance with yet another aspect of the present invention, anapparatus is provided. In an example embodiment, the apparatus comprisesmeans for receiving new route information. The new route informationcomprising an origin location, a destination location, and a time. In anexample embodiment, the apparatus comprises means for determining aroute based on the new route information. In an example embodiment, theapparatus comprises means for analyzing route data corresponding to theroute based on a high cognitive load model to identify one or more highcognitive load portions of the route. The route data comprises at leastone of (a) point of interest (POI) data, (b) entity of interest (EOI)data, or (c) roadway data. In an example embodiment, the apparatusfurther comprises means for generating familiarization information forat least one of the one or more high cognitive load portions. Thefamiliarization information comprises (a) familiarization content and(b) a trigger point. The familiarization content is configured to beprovided to a user via a user interface of a vehicle apparatus when,based at least in part on a location sensor of the vehicle apparatus, itis determined that the vehicle apparatus has reached the trigger point.In an example embodiment, the apparatus comprises means for providingthe familiarization information to the vehicle apparatus.

In an example embodiment, navigation data is received via a networkapparatus comprising at least one processor, at least one memory, and atleast one communications interface configured to communicate via atleast one network. The navigation data comprises a plurality of point ofinterest (POI) models. Each POI model is a representation of a POI,including dynamic aspects of the POI. At least a portion of theplurality of POI models are analyzed by the network apparatus based on adata extraction model to determine a link between two or more POIs basedon POI models corresponding to the two or more POIs. The two or morePOIs are located within a predefined distance of one another. An entityof interest (EOI) model is generated via the network apparatus based onthe POI models corresponding to the two or more POIs, the determinedlink, and the data extraction model. The EOI model is stored via thenetwork apparatus for use in performing one or more navigationfunctions.

According to an aspect of the present invention, a method forgenerating, providing, and/or storing EOI models is provided. In anexample embodiment, the method comprises receiving, via a networkapparatus comprising at least one processor, at least one memory, and atleast one communication interface configured to communicate via at leastone network, navigation data. The navigation data comprises a pluralityof point of interest (POI) models and each POI model is a representationof a POI. In an example embodiment, the method further comprisesanalyzing, via the network apparatus, at least a portion of theplurality of POI models based on a data extraction model to determine alink between two or more POIs based on POI models corresponding to thetwo or more POIs. The two or more POIs are located within a predefineddistance of one another. The method further comprises generating, viathe network apparatus, an entity of interest (EOI) model based on thePOI models corresponding to the two or more POIs, the determined link,and the data extraction model; and storing, via the network apparatus,the EOI model for use in performing one or more navigation functions.

In an example embodiment, the link is one or more relationships betweenthe two or more POIs that are determined based on human behavior orinterest criteria. In an example embodiment, the data extraction modelis a cognitive navigation model and the human behavior or interestcriteria is determined by the cognitive navigation model. In an exampleembodiment, at least one POI model comprises a POI dynamic element andthe link between the two or more POIs is based at least in part on thedynamic element. In an example embodiment, the EOI model comprises anEOI dynamic element determined based at least in part on the POI dynamicelement. In an example embodiment, the POI dynamic element is updated inreal-time or near real-time. In an example embodiment, the EOI model isused to identify a high cognitive load portion of a route.

According to another aspect of the present invention, an apparatus isprovided. In an example embodiment, the apparatus comprises at least oneprocessor, at least one non-transitory memory storing computer programcode, and at least one communications interface configured tocommunicate via at least one network. The computer program code isconfigured to, when executed by the at least one processor, cause theapparatus to at least receive navigation data, the navigation datacomprising a plurality of point of interest (POI) models, each POI modelbeing a representation of a POI; analyze at least a portion of theplurality of POI models based on a data extraction model to determine alink between two or more POIs based on POI models corresponding to thetwo or more POIs, generate an entity of interest (EOI) model based onthe POI models corresponding to the two or more POIs, the determinedlink, and the data extraction model; and store the EOI model for use inperforming one or more navigation functions. The two or more POIs arelocated within a predefined distance of one another.

In an example embodiment, the link is one or more relationships betweenthe two or more POIs that are determined based on human behavior orinterest criteria. In an example embodiment, the data extraction modelis a cognitive navigation model and the human behavior or interestcriteria is determined by the cognitive navigation model. In an exampleembodiment, at least one POI model comprises a POI dynamic element andthe link between the two or more POIs is based at least in part on thedynamic element. In an example embodiment, the EOI model comprises anEOI dynamic element determined based at least in part on the POI dynamicelement. In an example embodiment, the POI dynamic element is updated inreal-time or near real-time. In an example embodiment, the EOI model isused to identify a high cognitive load portion of a route.

In accordance with still another aspect of the present invention, acomputer program product is provided. The computer program productcomprises at least one non-transitory computer-readable storage mediumhaving computer-executable program code instructions stored therein. Thecomputer-executable program code instructions comprising program codeinstructions configured to, when executed by a processor of anapparatus, cause the apparatus to at least receive navigation data, thenavigation data comprising a plurality of point of interest (POI)models, each POI model being a representation of a POI; analyze at leasta portion of the plurality of POI models based on a data extractionmodel to determine a link between two or more POIs based on POI modelscorresponding to the two or more POIs, generate an entity of interest(EOI) model based on the POI models corresponding to the two or morePOIs, the determined link, and the data extraction model; and store theEOI model for use in performing one or more navigation functions. Thetwo or more POIs are located within a predefined distance of oneanother.

In an example embodiment, the link is one or more relationships betweenthe two or more POIs that are determined based on human behavior orinterest criteria. In an example embodiment, the data extraction modelis a cognitive navigation model and the human behavior or interestcriteria is determined by the cognitive navigation model. In an exampleembodiment, at least one POI model comprises a POI dynamic element andthe link between the two or more POIs is based at least in part on thedynamic element. In an example embodiment, the EOI model comprises anEOI dynamic element determined based at least in part on the POI dynamicelement. In an example embodiment, the POI dynamic element is updated inreal-time or near real-time. In an example embodiment, the EOI model isused to identify a high cognitive load portion of a route.

In still another aspect of the present invention, an apparatus isprovided. In an example embodiment, the apparatus comprises means forreceiving navigation data. The navigation data comprises a plurality ofpoint of interest (POI) models and each POI model is a representation ofa POI. In an example embodiment, the apparatus further comprises meansfor analyzing at least a portion of the plurality of POI models based ona data extraction model to determine a link between two or more POIsbased on POI models corresponding to the two or more POIs. The two ormore POIs are located within a predefined distance of one another. In anexample embodiment, the apparatus further comprises means generating anentity of interest (EOI) model based on the POI models corresponding tothe two or more POIs, the determined link, and the data extractionmodel. In an example embodiment, the apparatus further comprises meansfor storing the EOI model for use in performing one or more navigationfunctions.

In an example embodiment, at least one of (a) user behavior data or (b)driver questionnaire data is received via a network apparatus comprisingat least one processor, at least one memory, and at least onecommunications interface configured to communicate via at least onenetwork. In an example embodiment, navigation information comprising atleast one of (a) point of interest (POI) data, (b) entity of interest(EOI) data, or (c) roadway data is received via the network apparatus.In an example embodiment, the navigation information is analyzed via thenetwork apparatus based on the at least one of (a) user behavior data or(b) driver questionnaire data to identify at least one navigationscenario that is expected, based on the at least one of (a) userbehavior data or (b) driver questionnaire data, to cause a user to havean increased cognitive load when navigating the navigation scenario.Scenario information for the at least one navigation scenario isgenerated via the network apparatus. The scenario information comprisesat least one of (a) scenario identifying information configured foridentifying portions of a route that match the navigation scenario or(b) information for generating familiarization information for a portionof a route matching the navigation scenario. The scenario information isused to perform at least one of (a) identify a high cognitive loadportion of a route by matching a portion of the route to the navigationscenario based on the scenario identifying information or (b) generatefamiliarization information for the high cognitive load portion based onthe information for generating familiarization information.

According to an aspect of the present invention, a method for generatingand/or providing scenario information for the identification of highcognitive load portions is provided. In an example embodiment, themethod comprises receiving, via a network apparatus comprising at leastone processor, at least one memory, and at least one communicationsinterface configured to communicate via at least one network, at leastone of (a) user behavior data or (b) driver questionnaire data. In anexample embodiment, the method further comprises receiving, via thenetwork apparatus, navigation information comprising at least one of (a)point of interest (POI) data, (b) entity of interest (EOI) data, or (c)roadway data. In an example embodiment, the method further comprisesanalyzing, via the network apparatus, the navigation information basedon the at least one of (a) user behavior data or (b) driverquestionnaire data to identify at least one navigation scenario that isexpected, based on the at least one of (a) user behavior data or (b)driver questionnaire data to cause a user to have an increased cognitiveload when navigating the navigation scenario. In an example embodiment,the method further comprises generating, via the network apparatus,scenario information for the at least one navigation scenario, thescenario information comprising at least one of (a) scenario identifyinginformation configured for identifying portions of a route that matchthe navigation scenario or (b) information for generatingfamiliarization information for a portion of a route matching thenavigation scenario. The scenario information is used to perform atleast one of (a) identify a high cognitive load portion of a route bymatching a portion of the route to the navigation scenario based on thescenario identifying information or (b) generate familiarizationinformation for the high cognitive load portion based on the informationfor generating familiarization information.

In an example embodiment, at least one of (a) the identification of atleast one navigation scenario or (b) the scenario information ispersonalized for an individual user or a class of users. In an exampleembodiment, a class of users is a group of users having at least oneattribute in common. In an example embodiment, the navigationinformation is analyzed by and the scenario information is generated bya dynamic model creation engine and the dynamic model creation engine istrained via machine learning based at least in part on the at least oneof (a) user behavior data or (b) driver questionnaire data. In anexample embodiment, the dynamic model creation engine is personalizedfor an individual user by training the dynamic model creation engineusing the at least one of (a) user behavior data or (b) driverquestionnaire data corresponding to the individual user. In an exampleembodiment, the dynamic model creation engine is personalized for aclass of users by training the dynamic model creation engine using theat least one of (a) user behavior data or (b) driver questionnaire datacorresponding to users of the class of users. In an example embodiment,users of the class of users are grouped based on at least one of age ofthe users, driving experience of the users, number of years the usershave been driving, driving behavior of the users, or user preferences.

According to another aspect of the present invention, an apparatus isprovided. In an example embodiment, the apparatus comprises at least oneprocessor, at least one non-transitory memory storing computer programcode, and at least one communications interface configured tocommunicate via at least one network. The computer program code isconfigured to, when executed by the at least one processor, cause theapparatus to at least receive at least one of (a) user behavior data or(b) driver questionnaire data; receive navigation information comprisingat least one of (a) point of interest (POI) data, (b) entity of interest(EOI) data, or (c) roadway data; analyze the navigation informationbased on the at least one of (a) user behavior data or (b) driverquestionnaire data to identify at least one navigation scenario that isexpected, based on the at least one of (a) user behavior data or (b)driver questionnaire data to cause a user to have an increased cognitiveload when navigating the navigation scenario; and generate scenarioinformation for the at least one navigation scenario, the scenarioinformation comprising at least one of (a) scenario identifyinginformation configured for identifying portions of a route that matchthe navigation scenario or (b) information for generatingfamiliarization information for a portion of a route matching thenavigation scenario. The scenario information is used to perform atleast one of (a) identify a high cognitive load portion of a route bymatching a portion of the route to the navigation scenario based on thescenario identifying information or (b) generate familiarizationinformation for the high cognitive load portion based on the informationfor generating familiarization information.

In an example embodiment, at least one of (a) the identification of atleast one navigation scenario or (b) the scenario information ispersonalized for an individual user or a class of users. In an exampleembodiment, a class of users is a group of users having at least oneattribute in common. In an example embodiment, the navigationinformation is analyzed by and the scenario information is generated bya dynamic model creation engine and the dynamic model creation engine istrained via machine learning based at least in part on the at least oneof (a) user behavior data or (b) driver questionnaire data. In anexample embodiment, the dynamic model creation engine is personalizedfor an individual user by training the dynamic model creation engineusing the at least one of (a) user behavior data or (b) driverquestionnaire data corresponding to the individual user. In an exampleembodiment, the dynamic model creation engine is personalized for aclass of users by training the dynamic model creation engine using theat least one of (a) user behavior data or (b) driver questionnaire datacorresponding to users of the class of users. In an example embodiment,users of the class of users are grouped based on at least one of age ofthe users, driving experience of the users, number of years the usershave been driving, driving behavior of the users, or user preferences.

According to still another aspect of the present invention, a computerprogram product is provided. In an example embodiment, the computerprogram product comprises at least one non-transitory computer-readablestorage medium having computer-executable program code instructionsstored therein. The computer-executable program code instructionscomprise program code instructions configured to, when executed by aprocessor of an apparatus, cause the apparatus to at least receive atleast one of (a) user behavior data or (b) driver questionnaire data;receive navigation information comprising at least one of (a) point ofinterest (POI) data, (b) entity of interest (EOI) data, or (c) roadwaydata; analyze the navigation information based on the at least one of(a) user behavior data or (b) driver questionnaire data to identify atleast one navigation scenario that is expected, based on the at leastone of (a) user behavior data or (b) driver questionnaire data to causea user to have an increased cognitive load when navigating thenavigation scenario; and generate scenario information for the at leastone navigation scenario, the scenario information comprising at leastone of (a) scenario identifying information configured for identifyingportions of a route that match the navigation scenario or (b)information for generating familiarization information for a portion ofa route matching the navigation scenario. The scenario information isused to perform at least one of (a) identify a high cognitive loadportion of a route by matching a portion of the route to the navigationscenario based on the scenario identifying information or (b) generatefamiliarization information for the high cognitive load portion based onthe information for generating familiarization information.

In an example embodiment, at least one of (a) the identification of atleast one navigation scenario or (b) the scenario information ispersonalized for an individual user or a class of users. In an exampleembodiment, a class of users is a group of users having at least oneattribute in common. In an example embodiment, the navigationinformation is analyzed by and the scenario information is generated bya dynamic model creation engine and the dynamic model creation engine istrained via machine learning based at least in part on the at least oneof (a) user behavior data or (b) driver questionnaire data. In anexample embodiment, the dynamic model creation engine is personalizedfor an individual user by training the dynamic model creation engineusing the at least one of (a) user behavior data or (b) driverquestionnaire data corresponding to the individual user. In an exampleembodiment, the dynamic model creation engine is personalized for aclass of users by training the dynamic model creation engine using theat least one of (a) user behavior data or (b) driver questionnaire datacorresponding to users of the class of users. In an example embodiment,users of the class of users are grouped based on at least one of age ofthe users, driving experience of the users, number of years the usershave been driving, driving behavior of the users, or user preferences.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described certain example embodiments in general terms,reference will hereinafter be made to the accompanying drawings, whichare not necessarily drawn to scale, and wherein:

FIG. 1 is a block diagram showing an example architecture of oneembodiment of the present invention;

FIG. 2A is a block diagram of a network apparatus that may bespecifically configured in accordance with an example embodiment;

FIG. 2B is a block diagram of a vehicle apparatus that may bespecifically configured in accordance with an example embodiment;

FIG. 3 is a schematic diagram illustrating a route, portions of theroute associated with increased cognitive load, and trigger pointscorresponding to the portions of the route associated with increasedcognitive load, according to an example embodiment;

FIG. 4 is a block diagram of a familiarization system configured togenerate familiarization information/data, in accordance with an exampleembodiment;

FIG. 5 is another block diagram of a familiarization system configuredto generate familiarization information/data, in accordance with anexample embodiment;

FIG. 6 is a flowchart illustrating operations performed, such as by thenetwork apparatus of FIG. 2A to provide a familiarizationinformation/data, in accordance with an example embodiment;

FIG. 7 is a block diagram of an EOI generation system configured togenerate EOIs and populate corresponding EOI information/data, accordingto an example embodiment;

FIG. 8 is a flowchart illustrating operations performed, such as by thenetwork apparatus of FIG. 2A to generate EOIs and populate thecorresponding EOI information/data;

FIG. 9 is a block diagram of an example model generation system,according to an example embodiment; and

FIG. 10 is a flowchart illustrating operations performed, such as by thenetwork apparatus of FIG. 2A to generate and provide a cognitivenavigation model, according to an example embodiment.

DETAILED DESCRIPTION OF SOME EXAMPLE EMBODIMENTS

Some embodiments will now be described more fully hereinafter withreference to the accompanying drawings, in which some, but not all,embodiments of the invention are shown. Indeed, various embodiments ofthe invention may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. The term “or” (also denoted “/”) is used herein inboth the alternative and conjunctive sense, unless otherwise indicated.The terms “illustrative” and “exemplary” are used to be examples with noindication of quality level. Like reference numerals refer to likeelements throughout. As used herein, the terms “data,” “content,”“information,” and similar terms may be used interchangeably to refer todata capable of being transmitted, received and/or stored in accordancewith embodiments of the present invention. As used herein, the terms“substantially” and “approximately” refer to values that are withinmanufacturing and/or engineering guidelines and/or limits. Thus, use ofany such terms should not be taken to limit the spirit and scope ofembodiments of the present invention.

Additionally, as used herein, the term ‘circuitry’ refers to (a)hardware-only circuit implementations (e.g., implementations in analogcircuitry and/or digital circuitry); (b) combinations of circuits andcomputer program product(s) comprising software and/or firmwareinstructions stored on one or more computer readable memories that worktogether to cause an apparatus to perform one or more functionsdescribed herein; and (c) circuits, such as, for example, amicroprocessor(s) or a portion of a microprocessor(s), that requiresoftware or firmware for operation even if the software or firmware isnot physically present. This definition of ‘circuitry’ applies to alluses of this term herein, including in any claims. As a further example,as used herein, the term ‘circuitry’ also includes an implementationcomprising one or more processors and/or portion(s) thereof andaccompanying software and/or firmware.

II. General Overview

Methods, apparatus, systems, and computer program products are providedin accordance with an example embodiment for providing familiarizationcontent to a user. For example, one or more portions of a route that isunfamiliar and/or novel to a user and that may cause an increase incognitive load when a user navigates (e.g., operates/drives a vehiclealong) those portions of the route may be identified and/or determined.For example, portions of a route associated with increased cognitiveload for a user (referred to as high cognitive load portions herein) maybe identified and/or determined. In an example embodiment, highcognitive load portions of a route may be identified and/or determinedusing a human cognitive navigation model. Familiarizationinformation/data regarding the one or more high cognitive load portionsis extracted and/or generated based on route information/data and/or EOIinformation/data corresponding to the corresponding portion of theroute. The familiarization information/data comprises familiarizationcontent configured to be provided to a user to familiarize the user witha high cognitive load portion of the route such that the user maynavigate the high cognitive load portion with a decrease in cognitiveload compared to navigating the high cognitive load portion withoutreceiving the familiarization content. The familiarization content maybe provided to a user traveling along the route (e.g., operating/drivinga vehicle along the route) at trigger points that are locations and/ortimes along the route prior to the user reaching the correspondingportion of the route associated with increased cognitive load. Invarious embodiments, the familiarization content is optimumfamiliarization content that is optimized to minimize the cognitive loadexperienced by the user as the user navigates the corresponding highcognitive load portion.

Methods, apparatus, systems, and computer program products are providedin accordance with an example embodiment for generating EOIs andpopulating corresponding EOI information/data. In an example embodiment,an EOI is an entity generated by linking two or more POIs. In variousembodiments, the linking between the two or more POIs may be dynamicand/or time dependent. In various embodiments, the two or more POIs ofan EOI are linked via a relationship determined based on human behaviorand/or interest criteria and are within a predefined distance of oneanother. Various embodiments relate to generation and/or use of EOIs indetermining and/or providing navigation information/data,familiarization information/data, and/or the like. For example, in anexample embodiment, and EOI located along a route may be a source ofincreased cognitive load for a user navigating along the route.

Methods, apparatus, systems, and computer program products are providedin accordance with an example embodiment for generating and updating ahigh cognitive load model. In various embodiments, a high cognitive loadmodel is configured to identify navigation scenarios that are likely tocause a user's cognitive load to increase when the user is navigating aportion of a route corresponding to and/or matching the navigationscenario. For example, the high cognitive load model may generatescenario information/data and/or scenario templates corresponding tonavigation scenarios that are likely to cause a user's cognitive load tobe increased when navigating the navigation scenarios (referred toherein as high load navigation scenarios). In various embodiments, thescenario information/data and/or scenario templates may be used toidentify high cognitive load portions of a route and to determine,generate, and/or extract familiarization information/data (e.g.,including familiarization content) for the identified high cognitiveload portions. In various embodiments, the high cognitive load model isa human cognitive navigation model configured for modeling humancognitive processing in various navigation scenarios. In an exampleembodiment, the cognitive navigation model is trained using navigationinformation/data, user behavior information/data, and/or feedbackdirectly from one or more users (e.g., a user questionnaire). In anexample embodiment, the cognitive navigation model is trained usingmachine learning with support from a machine learning engine.

FIG. 1 provides an illustration of an example system that can be used inconjunction with various embodiments of the present invention. As shownin FIG. 1, the system may include one or more network apparatuses 10,one or more vehicle apparatuses 20 (e.g., 20A, 20B), wherein eachvehicle apparatus 20 is disposed on a vehicle 5, one or more networks50, and/or the like.

In various embodiments, the vehicle apparatus 20, may be an in vehiclenavigation system, vehicle control system, a mobile computing device, amobile data gathering platform, and/or the like. For example, a vehicleapparatus 20 may be an in vehicle navigation system mounted withinand/or be onboard a vehicle 5 such as a motor vehicle, non-motorvehicle, automobile, car, scooter, truck, van, bus, motorcycle, bicycle,Segway, golf cart, and/or the like. In an example embodiment, thevehicle apparatus 20 may be a vehicle control system configured toautonomously drive a vehicle 5, assist in control of a vehicle 5,monitor various aspects of the vehicle 5 (e.g., fault conditions, motoroil status, battery charge level, fuel tank fill level, and/or the like)and/or the like. In various embodiments, the vehicle apparatus 20 isconfigured to autonomously drive a vehicle 5 and may perform multiplefunctions that are similar to those performed by a vehicle apparatus 20configured to be an ADAS (e.g., lane keeping, lane change assistance,maintaining a lane, merging, etc.). In some embodiments, vehicleapparatus 20 may be onboard a personal vehicle, commercial vehicle,public transportation vehicle, fleet vehicle, and/or other vehicle. Invarious embodiments, the vehicle apparatus 20 may be a smartphone,tablet, personal digital assistant (PDA), personal computer, desktopcomputer, laptop, and/or other mobile computing device. In an exampleembodiment, a vehicle apparatus 20 is onboard a vehicle 5 and is used toperform one or more navigation functions corresponding to the vehicle 5traversing at least a portion of a road network. Some non-limitingexamples of navigation functions are localization, route determination,lane level route determination, lane maintenance, route guidance, lanelevel route guidance, provision of traffic information/data, provisionof lane level traffic information/data, determination and/or provisionof route familiarization content, and/or the like.

In an example embodiment, the network apparatus 10 may be a server,group of servers, distributed computing system, and/or other computingsystem. For example, the network apparatus 10 may be in communicationwith one or more vehicle apparatuses 20, and/or the like via one or morewired and/or wireless networks 50.

In an example embodiment, a network apparatus 10 may comprise componentssimilar to those shown in the example network apparatus 10 diagrammed inFIG. 2A. In an example embodiment, the network apparatus 10 isconfigured to receive trip and/or route information/data from a userapparatus 20, identify and/or generate EOIs and populate correspondingEOI information/data, identify portions of a route associated withincreased cognitive load for a user, extract and/or generatefamiliarization information/data for a route, provide a route and/orfamiliarization information/data for a route to a user apparatus 20,and/or the like. For example, as shown in FIG. 2A, the network apparatus10 may comprise a processor 12, memory 14, a user interface 18, acommunications interface 16, and/or other components configured toperform various operations, procedures, functions or the like describedherein. In at least some example embodiments, the memory 14 isnon-transitory.

In various embodiments, a vehicle apparatus 20 is configured to providea user with an interactive user interface (e.g., via the user interfaceof the vehicle apparatus 20), receive user input indicating and/orselecting a trip and/or a route, provide trip and/or routeinformation/data to a network apparatus 10, receive routeinformation/data and/or familiarization information/data from thenetwork apparatus 10, provide familiarization content to user atappropriate points along a route, and/or the like. In an exampleembodiment, as shown in FIG. 2B, the vehicle apparatus 20 may comprise aprocessor 22, memory 24, a communications interface 26, a user interface28, one or more location sensors 29 (e.g., a GNSS sensor; IMU sensors;an odometry system, and/or the like) and/or other components configuredto perform various operations, procedures, functions or the likedescribed herein. For example, in an example embodiment, a vehicleapparatus 20 may comprise further sensors such as, for example, acamera(s); two dimensional (2D) and/or three dimensional (3D) lightdetection and ranging (LiDAR)(s); long, medium, and/or short range radiodetection and ranging (RADAR); ultrasonic sensors; electromagneticsensors; (near-) infrared (IR) cameras; 3D cameras; 360° cameras; fuellevel sensors; vehicle system sensors (e.g., oil status sensors, tirepressure sensors, engine oil pressure sensors, coolant level sensors,engine/coolant temperature sensors, and/or other sensors that enable thevehicle apparatus 20 to determine one or more features of thecorresponding vehicle's 5 surroundings and/or monitor the vehicle's 5operating parameters). In at least some example embodiments, the memory24 is non-transitory.

In an example embodiment, the network apparatus 10 may be incommunication with one or more of vehicle apparatuses 20 via one or morewired and/or wireless networks 50. For example, each of the componentsof the system may be in electronic communication with, for example, oneanother over the same or different wireless or wired networks 50including, for example, a wired or wireless Personal Area Network (PAN),Local Area Network (LAN), Metropolitan Area Network (MAN), Wide AreaNetwork (WAN), cellular network, short and/or medium rangecommunications, and/or the like. In some embodiments, a network 50 maycomprise the automotive cloud, digital transportation infrastructure(DTI), radio data system (RDS)/high definition (HD) radio or otherdigital radio system, and/or the like. For example, a vehicle apparatus20 may be in communication with a network apparatus 10 via the network50. For example, a vehicle apparatus 20 may communicate with the networkapparatus 10 via a network, such as the Cloud. For example, the Cloudmay be a computer network that provides shared computer processingresources and data to computers and other devices connected thereto.

Certain example embodiments of the network apparatus 10 and/or vehicleapparatus 20 are described in more detail below with respect to FIGS. 2Aand 2B.

II. Example Operation

Example embodiments provide methods, apparatus, systems, computerprogram products, and/or the like for providing a user (e.g., anoperator/driver of a vehicle 5) with familiarization information/datafor portions of an unfamiliar and/or novel route that are associatedwith increased levels of cognitive load (e.g., high cognitive loadportions of the route). In an example embodiment, familiarizationinformation/data comprises familiarization content. The familiarizationcontent comprises information/data configured to be provided visually,audibly, and/or haptically to a user as the user navigates an unfamiliarand/or novel route and is configured to familiarize a user with thecorresponding high cognitive load portion of the route such that theuser's cognitive load while navigating the corresponding portion of theroute is decreased compared to if the familiarization content was notprovided to the user. In various embodiments, an unfamiliar and/or novelroute is a route that, according to a user profile corresponding to theuser, at least a portion of the route has not been previously navigatedby the user; when a new scenario (e.g., construction, different time ofday, a different day of the week than when the user usually navigatesand/or has previously navigated the route, different weather conditionsthan when the user has previously navigated the route, and/or the like);a route that the user has navigated only a few times (e.g., a number oftimes that satisfies a novelty threshold requirement); and/or route thatuser preferences stored in association with a user profile correspondingto the user indicate that the route should be considered unfamiliarand/or novel.

Cognitive load refers to the effort being used in the working memory ofa user. For example, when a user experiences an increased cognitiveload, the user is having to put greater effort into the use of workingmemory. Working memory is a human cognitive system with a limitedcapacity that is responsible for temporarily holding informationavailable for processing by the human brain. A heavy cognitive loadtypically creates error or some kind of interference in the task at hand(e.g., operating/driving a vehicle 5). Thus, various embodiments of thepresent invention provide familiarization content to a user (e.g., anoperator/driver of a vehicle 5) as the user navigates an unfamiliarand/or novel route so as to reduce the user's overall cognitive loadsuch to enable the user to maximize the amount of processing that may befocused on the task at hand (e.g., operating/driving the vehicle 5). Forexample, the familiarization content for an example high cognitive loadportion may comprise the text “take next right and the immediate leftafter 200 meters, which is followed by an immediate signal,” rather thanmerely instructing the user to “take the next right and then take thefirst left.” In another example, the familiarization content for anexample high cognitive load portion may comprise the text “usecaution—entering area with heavy pedestrian traffic including children.”

In various embodiments, EOIs may be determined and/or generated for usein identifying portions of a route that are associated with increasedcognitive load. For example, an EOI may be determined and/or generatedby identifying a link between two or more POIs. In an example, the linkmay be a dynamic link. As used herein, a dynamic link is a link betweentwo or more POIs that is determined and/or identified based on one ormore dynamic elements of at least one of the two or more POIs. As usedherein, a dynamic element is an element or field (e.g., and/or set ofassociated/linked fields) of an instance of POI (and/or EOI)information/data that is time dependent. In various embodiments, thetime dependence may be dependent on time of day, day of the week,calendar date, month, year, season, time of year, whether the day is aholiday or not, and/or other time dependent characteristic.

In various embodiments, high cognitive load portions of a route aredetermined and/or identified based on a user profile corresponding tothe user, a classification associated with the user (e.g., aclassification and/or class identifier stored in the user profile),and/or the like. In an example embodiment, determined and/or identifiedhigh cognitive load portions of a route are universal among varioususers (e.g., not user dependent). In various embodiments, the highcognitive load portions of a route are determined and/or identifiedbased on a human cognitive navigation model. In an example embodiment, ahuman cognitive navigation model is human cognitive model trained (e.g.,via machine learning) for modeling human cognitive patterns that relateto navigation.

Providing Familiarization Information/Data

In various embodiments, familiarization information/data comprisesfamiliarization content that is configured to be provided to a usernavigating an unfamiliar and/or novel route to reduce the user'scognitive load while navigating high cognitive load portions of theroute. As used herein a high cognitive load portion of a route is aportion of a route that is associated with increased cognitive load fora user navigating the route (e.g., operating/driving a vehicle along theroute). In various embodiments, an instance of familiarizationinformation/data corresponds to a high cognitive load portion andcomprises a trigger point and text, graphics, a template for generatingtext and/or graphics, and/or the like to be provided to a user (e.g.,via an IUI provided via the user interface 28 of a vehicle apparatus20), computer executable instructions for generating and/or providingtext, graphics and/or the like to be provided to a user, and/or thelike. In an example embodiment, an instance of familiarizationinformation/data comprises (a) a location of a high cognitive loadportion (e.g., identifying the location at which a user will enter ahigh cognitive load portion along the route, designating a section ofthe route as a high cognitive load portion, and/or the like), (b) atrigger point (e.g., a particular location along the route at which thefamiliarization content should be provided to the user and/or aparticular amount of time before the user is expected to reach the highcognitive load portion at which the warning and/or alert should beprovided to the user), (c) the familiarization content to be provided tothe user via the user interface 28 (e.g., text to be audibly provided toa user, text and/or graphics to be visually provided to the user, and/orthe like), and/or the like. In an example embodiment, thefamiliarization information/data further comprises one or more settingsmodifications. In an example embodiment, a settings modification may bean instruction (e.g., computer-executable instruction) that causes oneor more settings of the vehicle apparatus 20 to be updated. For example,one or more settings of a navigation application operating on thevehicle apparatus 20 (e.g., the application causing the IUI to the uservia the user interface 28) may be updated and/or modified. In an exampleembodiment, the navigation engine 300 and/or navigation applicationoperating on the vehicle apparatus 20 may be configured to manage,update, modify, and/or the like one or more operating parameters of thevehicle 5 (e.g., braking responsiveness, handling responsiveness,daytime running lights and/or headlight operation, driving mode, and/orthe like) based on the settings modifications.

FIG. 3 illustrates a portion of a road network 850 comprising a route800. In an example embodiment, a route 800 corresponds to a particulartrip, wherein a particular trip is defined by an origin location, adestination location, and a time (e.g., a date/time of arrival, adate/time of departure, a date/time when the user is expected to belocated at a particular position along a route from the origin locationto the destination location, and/or the like). The route 800 extendsfrom an origin location 802 to a destination location 804 and comprisestwo high cognitive load portions 806 and 812. High cognitive loadportion 806 corresponds to EOI 808 and high cognitive load portion 812corresponds to a portion of the route with high driving difficulty(e.g., where A Street dog-legs across Second Avenue). In an exampleembodiment, familiarization content corresponding to high cognitive loadportion 806 is visually, audibly, and/or haptically provided to the user(via the user interface 28 of the vehicle apparatus 20) when the user(e.g., as determined by a location sensor 29 of the vehicle apparatus20) is located at and/or has passed through trigger point 810. Forexample, when the user (e.g., as determined by a location sensor 29 ofthe vehicle apparatus 20) is located at and/or has passed throughtrigger point 810, the vehicle apparatus 20 may use a speaker of theuser interface 28 (and/or of the vehicle 5) to audibly provide the userwith a warning and/or alert regarding approaching the EOI 808 andindicating actions a user should take (be alert, be aware that a largenumber of pedestrians may be crossing the street, be aware that childrenmay be walking on the sidewalk, and/or the like). As should beunderstood, the warning and/or alert is tailored to the correspondinghigh cognitive load portion and/or extracted from EOI and/or routeinformation/data (e.g., map information/data corresponding to the links,nodes, intersections, road geometry, road topology, POIs, EOIs and/orthe like along the route) for the corresponding high cognitive loadportion. The trigger point corresponding to high cognitive load portion812 is designated as trigger point 814. In various embodiments, atrigger point may be a particular location along a route (e.g., 100meters, 500 meters, 1000 meters, 1500 meters, 2000 meters and/or thelike before the corresponding high cognitive load portion) or aparticular time period ahead of when a user is expected to reach thecorresponding high cognitive load portion (e.g., 30 seconds, one minute,ninety seconds, two minutes, five minutes, and/or the like before theuser is expected to reach the high cognitive load portion). In anexample embodiment, the particular location or the particular timeperiod may depend on a classification (EOI, road geometry/topology,and/or the like) of the high cognitive load portion 812, the visibilityof the high cognitive load portion as the user approaches the highcognitive load portion, and/or the like.

FIG. 4 provides a block diagram of a familiarization system 500 forgenerating familiarization information/data to be provided to a user.FIG. 5 provides a block diagram illustrating data flows within anexample familiarization system 500 for generating familiarizationcontent to be provided to a user. In an example embodiment, the systemcomprises a navigation engine 300. In an example embodiment, anavigation engine 300 is configured for determining one or more routesfrom an origin location to a destination location. For example, anavigation engine 300 may access a geographic database for determiningone or more routes for a particular trip. In an example embodiment, thenavigation engine 300 may operate on the vehicle apparatus 20, one thenetwork apparatus 10, and/or may be a distributed application thatoperates in part on the vehicle apparatus 20 and in part on the networkapparatus 10, and/or the like. In various embodiments, the navigationengine 300 is configured to provide a user with route information/dataas the user traverses the route (e.g., “turn left on A Street”), providea user with an overview of the route, provide the user withfamiliarization content (e.g., warnings, notifications, text, graphics,and/or alerts regarding high cognitive load portions), and/or cause avehicle apparatus to provide a user with navigation information/data,route overview, and/or familiarization content. In various embodiments,the navigation engine 300 is configured to provide route and/ornavigation information/data to an extraction engine 100, provideconfiguration information/data to a configuration engine 400, and/or thelike. In an example embodiment, route information/data is navigationinformation/data that corresponds to a route from an origin location toa destination location. In various embodiments, navigationinformation/data comprises geographic information/data such asinformation regarding road segments; intersections between roadsegments; information/data corresponding to POIs; expected, historical,and/or (near) real-time traffic, weather, and/or driving effortinformation/data corresponding to road segments, intersections, and/orPOIs, and/or the like.

In various embodiments, the familiarization system 500 further comprisesa high cognitive load model 200. In various embodiments, the highcognitive load model 200 is configured for determining and/oridentifying various high load navigation scenarios and provide scenarioinformation/data and/or scenario templates corresponding to theidentified high load navigation scenarios. In an example embodiment, thehigh cognitive load portions of a route are identified and/or determinedbased on analyzing route information/data for the route based on and/orusing the scenario information/data and/or scenario templates. Invarious embodiments, the high cognitive load model 200 operates on thenetwork apparatus 10. In an example embodiment, a high cognitive loadmodel 200 may generates one or more instances of scenarioinformation/data and/or scenario templates that comprise templates,threshold requirements, and/or other models that may be used todetermine and/or identify high cognitive load portions of a route. In anexample embodiment, the familiarization system 500 comprises two or morehigh cognitive load models 200. For example, a first high cognitive loadmodel 200 may correspond to a first type and/or class of high cognitiveload portions (e.g., high cognitive load portions corresponding to EOIsand/or POIs and/or a particular type of EOIs and/or POIs), a second highcognitive load model 200 may correspond to a second type and/or class ofhigh cognitive load portions (e.g., high cognitive load portionscorresponding to road geometry and/or topology, difficult drivingscenarios, various weather scenarios, and/or the like).

In an example embodiment, the high cognitive load model 200 is a humancognitive navigation model 205 (see FIG. 5). In various embodiments, acognitive navigation model 205 is a cognitive model configured to modelthe cognitive load of a user navigating a route. In an exampleembodiment, the cognitive navigation model 205 is trained using machinelearning. For example, machine learning engine 250 may perform machinelearning to generate the cognitive navigation model 205, update modelparameters of the cognitive navigation model 205, and/or the like. Invarious embodiments, the machine learning engine 250 may use userbehavior information/data stored in a user behavior data store and/ordatabase 260 and/or user feedback (e.g., via a driver questionnaireand/or the like) for training the cognitive navigation model 205.

In various embodiments, the familiarization system 500 further comprisesa configuration engine 400. In various embodiments, the configurationengine 400 operates on the network apparatus 10 and/or as a distributedapplication operating in part on the network apparatus 10 and in part onthe vehicle apparatus 20. In various embodiments, the configurationengine 400 is configured to receive configuration information/data,store and/or format the received configuration information/data andprovide the configuration information/data to other components of thefamiliarization system 500 (e.g., the navigation engine 300, highcognitive load model 200, extraction engine 100, and/or the like). Forexample, one or more users may fill out an operator/driver questionnaireor survey regarding driving situations that may cause the user stress(e.g., increase the user's cognitive load), user preferences and/orfeedback regarding what type of familiarization content (e.g., content,how the content is provided, and/or the like) help to reduce the user'scognitive load. The questionnaire or survey results may be provided tothe configuration engine 400 as configuration information/data. Invarious embodiments, parameters for a cognitive navigation model 200 maybe provided to the configuration engine 400 as configurationinformation/data. In various embodiments, navigation parameters may beprovided to the configuration engine 400 as configurationinformation/data. In various embodiments, various other parameters(e.g., vehicle handling parameters, and/or the like) may be provided tothe configuration engine 400 as configuration information/data.

In various embodiments, the familiarization system 500 further comprisesan extraction engine 100. In various embodiments, the extraction engine100 operates on the network apparatus 10. In various embodiments, theextraction engine 100 is configured to receive scenario information/dataand/or scenario templates and route information/data for the route andidentify high cognitive load portions of a route and generate and/orextract familiarization information/data corresponding to the highcognitive load portions of the route based on the route information/datafor the route. For example, the extraction engine 100 receives scenarioinformation/data and/or scenario templates from the high cognitive loadmodel 200. In an example embodiment, the high cognitive load model 200(e.g., the cognitive navigation model 205) provides and the extractionengine 100 receives driving characteristics information/datacorresponding to how a individual user and/or a generic user (possiblyof a particular class of users) is expected to respond to variousdriving scenarios, information/data regarding navigation scenarios thattend to lead to an increase cognitive load for a user, behavior aspectsinformation/data regarding a individual user and/or a generic user(possibly of a particular class of user) behavior (e.g., response tovarious types of familiarization content warnings, text, graphics,notifications, and/or alerts, and/or the like), constraints, and/orother information/data. The extraction engine 100 further receives routeinformation/data comprising POI information/data, EOI information/data,and/or roadway information/data (e.g., map information/datacorresponding to the links, nodes, intersections, road geometry, roadtopology, and/or the like along the route) corresponding to the routefrom the navigation engine 300. For example, the navigation engine 300may provide and the extraction engine 100 may receive POI staticinformation/data; POI dynamic information/data; current, historical,and/or predicted weather information/data; driving effortinformation/data; traffic information/data; and/or otherinformation/data corresponding to the route. In an example embodiment,the route information/data comprises the map information/data requiredto describe the route. In an example embodiment, the extraction engine100 may receive configuration information/data from the configurationengine 400. In various embodiments, the extraction engine 100 mayreceive various other information/data such as, for example, timeinformation/data. For example a clock of the vehicle apparatus 20 and/ornetwork apparatus 10 and/or user input may provide a time correspondingto a particular trip (e.g., departure time, arrival time, a timecorresponding to when a user expects and/or desires to be located at aparticular point along the route, and/or the like). This time may beused to identify relevant dynamic EOI and/or POI information/data forthe route of a particular trip.

The extraction engine 100 generates and/or extracts familiarizationinformation/data from the route information/data for the high cognitiveload portions of the route. In an example embodiment, familiarizationinformation/data comprises (a) a location of a high cognitive loadportion (e.g., identifying the location at which a user will enter ahigh cognitive load portion along the route, designating a section ofthe route as a high cognitive load portion, and/or the like), (b) atrigger point (e.g., a particular location along the route at which thewarning and/or alert should be provided to the user and/or a particularamount of time before the user is expected to reach the high cognitiveload portion at which the warning and/or alert should be provided to theuser), (c) the familiarization content to be provided to the user viathe user interface 28 (e.g., text to be audibly provided to a user, textand/or graphics to be visually provided to the user, and/or the like),and/or the like. In an example embodiment, the familiarizationinformation/data further comprises one or more settings modifications.In an example embodiment, the extraction engine 100 is configured toprovide the familiarization information/data 150 such that thefamiliarization content may be provided to the user. In an exampleembodiment, extraction engine 100 provides the familiarizationinformation/data to an application operating on the vehicle apparatus20. In an example embodiment, the extraction engine 100 provides one ormore settings modifications to the navigation engine 300 based on theextracted and/or generated familiarization information/data and/or routeinformation/data corresponding to the high cognitive load portions ofthe route. In an example embodiment, the navigation engine 300 updatesthe settings used to provide information/data to a user (e.g., via theuser interface 28) based on the settings modifications. In an exampleembodiment, the navigation engine 300 may be configured to manage,update, modify, and/or the like one or more operating parameters of thevehicle 5 (e.g., braking responsiveness, handling responsiveness,daytime running lights and/or headlight operation, driving mode, and/orthe like) based on the settings modifications.

In various embodiments, an extraction engine 100 comprises an EOIcreation engine 110, a content generation engine 120, an identificationengine 130, and/or the like. For example, the EOI creation engine may beconfigured for generating and/or creating one or more EOIs based on POIinformation/data for one or more POIs. EOI creation is describedelsewhere herein in detail.

In various embodiments, the identification engine 130 uses scenarioinformation/data and/or scenario templates provided by one or more highcognitive load models 200 (e.g., a cognitive navigation model 205) toanalyze the route information/data (including EOI information/datacorresponding to EOIs located along the route) for the route todetermine and/or identify high cognitive load portions of the route. Forexample, in an example embodiment, the scenario information/data and/orscenario templates may provide templates and/or threshold requirementsfor various high load navigation scenarios (e.g., navigation scenariosthat may increase cognitive load for a user navigating the navigationscenario). In an example embodiment, the identification engine 130 isconfigured to review, analyze, and/or the like EOI information/data, POIinformation/data, roadway information/data (e.g., geometry and/ortopology information/data of one or more roads corresponding to a routeto determine and/or identify high cognitive load portions of the route.In an example embodiment, an identification engine 130 may determine ifa property of a road segment, link, and/or the like (e.g., based on theroad geometry and/or topology information/data) satisfies one or morethreshold requirements of an instance of scenario information/dataand/or scenario template. For example, in an example embodiment, if thecurvature of a section of a road segment satisfies a first curvaturethreshold requirement, the section of the road segment is identified asa high cognitive load portion; if there is a driveway or road and/orintersection that is located at a point along a section of a roadsegment that has a curvature that satisfies a second curvature thresholdrequirement, the section of the road segment is identified as a highcognitive load portion; if a section of a road segment has a grade orslope that satisfies a first grade threshold requirement, the section ofthe road segment is identified as a high cognitive load portion; if asection of the road segment has a grade or slope that satisfies a secondgrade threshold requirement and a curvature that satisfies a thirdcurvature threshold requirement, the section of the road segment isidentified as a high cognitive load portion; and/or the like. In variousembodiments, the identification engine 130 may compare one or moretemplates to the route information/data to determine if a template fitsany portion of the route information/data and/or if any portion of theroute information/data satisfies a threshold requirement to determineand/or identify high cognitive load portions of the route.

In various embodiments, the content generation engine 120 is configuredto create and/or generate familiarization information/data for thedetermined and/or identified high cognitive load portions of the route.For example, the content generation engine 120 may generate thefamiliarization content, determine and/or identify the trigger point atwhich the familiarization content should be provided to the user,determine and/or generate setting modifications, and/or the like.

FIG. 6 provides a flowchart of example processes, operations,procedures, and/or the like of a network apparatus 10 for providing auser with familiarization content, according to an example embodiment.Starting at block 502, new route information/data is received. Forexample, the network apparatus 10 receives new route information/data.For example, the network apparatus 10 comprises means, such as processor12, memory 14, communications interface 16, and/or the like forreceiving new route information/data. In an example embodiment, the newroute information/data comprises complete route information/data for aroute of a particular trip. In an example embodiment, the new routeinformation/data comprises information/data defining a particular trip(e.g., an origin location, a destination location, and a time) and thenavigation engine 300 generates the route information/data for the routebased on the new route information/data.

In an example embodiment, the new route information/data is provided(e.g., transmitted) by the vehicle apparatus 20. For example, in anexample embodiment, a vehicle apparatus 20 may operate a navigationapplication configured to provide a user with an IUI via the userinterface 28 of the vehicle apparatus 20. The IUI may be configured toreceive (e.g., via user interaction with the user interface 28 and/orthe like) information/data defining a particular trip. For example, auser may provide input identifying a destination location, an originlocation, and a time. In an example embodiment, the user may provideinput via the user interface 28 identifying a destination location andthe navigation application may assume that the origin location is thecurrent location of the user (e.g., as determined by the location sensor29 of the vehicle apparatus 20) and the time is depart at the currenttime unless the user provides input (e.g., via the user interface 28)indicating a different origin location and/or time. In an exampleembodiment, a user may provide input comprising a destination address(e.g., a street address), a destination geolocation (e.g., longitude andlatitude), a name of a POI located at the destination location,selecting a position on a map, and/or the like to provide inputindicating the destination location. Similarly, a user may provide inputcomprising an origin address, an origin geolocation (e.g., longitude andlatitude), a name of a POI located at the origin location, selecting aposition on a map, and/or the like to provide input indicating theorigin location. Upon receipt of the new route information/data (e.g.,via the user interface 28), the vehicle apparatus 20 may provide the newroute information/data to the network apparatus 10. In an exampleembodiment, the vehicle apparatus 20 may determine a route based on thenew route information/data and include route information/datacorresponding to the determined route as part of the new routeinformation/data. In an example embodiment, the vehicle apparatus 20 mayprovide the new route information/data to the network apparatus 10 suchthat the network apparatus 10 may determine a route based on the newroute information/data.

After the receiving the new route information/data, the networkapparatus 10 may determine a route based on the new routeinformation/data, if the new route information/data does not indicate aroute. For example, the navigation engine 300 may determine a routebased on the new route information/data. Then, at block 504, it may bedetermined if the route is an unfamiliar and/or novel route for theuser. For example, the network apparatus 10 (e.g., the extraction engine100 operating on the network apparatus 10) may determine if the route isan unfamiliar and/or novel route for the user. For example, the networkapparatus 10 may comprise means, such as the processor 12, memory 14,and/or the like, for determining if the route is an unfamiliar and/ornovel route for the user. In various embodiments, an unfamiliar and/ornovel route is a route that, according to a user profile correspondingto the user, at least a portion of the route has not been previouslytraversed by the user; when a new scenario (e.g., construction,different time of day, a different day of the week than when the userusually traverses and/or has previously traversed the route, differentweather conditions than when the user has previously traversed theroute, and/or the like); a route that the user has traversed only a fewtimes (e.g., a number of times that satisfies a novelty thresholdrequirement); and/or route that, based on user preferences stored inassociation with a user profile corresponding to the user indicate thatthe route should be considered unfamiliar and/or novel. In an exampleembodiment, if it is determined that the route is not unfamiliar and/ornovel for the user, the process may end (e.g., familiarizationinformation/data may not be determined and provided to the user). In anexample embodiment, if it is determined that the route is unfamiliarand/or novel for the user the process continues to block 506.

At block 506, the extraction engine 100 operating on the networkapparatus 10 receives information/data from the navigation engine 300(which may also be operating on the network apparatus 10). For example,the network apparatus 10 may comprise means, such as processor 12,memory 14, and/or the like, for passing information/data from thenavigation engine 300 to the extraction engine 100. For example, thenavigation engine 300 may pass route information/data (including POIand/or EOI information/data for the route such as static and/or dynamicelements of the POI information/data), weather information/data, drivingeffort information/data, traffic information/data, and/or otherinformation/data corresponding to the route such that theinformation/data is received by the extraction engine 100.

At block 508, one or more EOIs may be generated. For example, based onthe POI information/data for the route the EOI creation engine 110(operating on the network apparatus 10) may generate one or more EOIscorresponding to the route. For example, the EOI creation engine 110operating on the network apparatus 10 may generate one or more EOIscorresponding to the route. In an example embodiment, the networkapparatus 10 comprises means, such as the processor 12, memory 14,and/or the like, for generating one or more EOIs corresponding to theroute. In an example embodiment, the EOI creation engine 110 maygenerate, maintain, and/or the like an EOI data store (e.g., an EOIdatabase) comprising EOI information/data for previously generated EOIs.The EOI creation engine 110 may update the EOI data store with any EOIinformation/data for the one or more generated EOIs corresponding to theroute. The EOI creation engine 110 may, prior to generating the one ormore EOIs, determine if there are any EOIs corresponding to the routestored in the EOI data store and access the corresponding EOIinformation/data from the EOI data store. For example, the EOI creationengine 110 may minimize the number of EOIs that need to be created for aroute by accessing previously generated EOIs stored in the EOI datastore.

At block 510, the extraction engine 100 receives information/data fromthe high cognitive load model 200. For example, the extraction engine100 (operating on the network apparatus 10) may pass a request forinformation/data to the high cognitive load model 200 (operating on thenetwork apparatus 10) and, responsive thereto, receive scenarioinformation/data and/or scenario templates from the high cognitive loadmodel 200. For example, the network apparatus 10 may comprise means,such as processor 12, memory 14, and/or the like, for passinginformation/data from the high cognitive load model 200 to theextraction engine 100. For example, the extraction engine 100 mayreceive driving characteristics information/data corresponding to how aindividual user and/or a generic user (possibly of a particular class ofusers) responds to various driving scenarios, information/data regardingnavigation scenarios that tend to lead to an increase cognitive load fora user, behavior aspects information/data regarding a individual userand/or a generic user (possibly of a particular classification of user)behavior (e.g., response to various types of familiarization contentwarnings, notifications, text, graphics, and/or alerts, and/or thelike), constraints, and/or other information/data from the highcognitive load model 200. For example, in an example embodiment, thehigh cognitive load model 200 (and/or a plurality of high cognitive loadmodels 200) may provide templates and/or threshold requirements forvarious scenarios that may increase cognitive load for a user. In anexample embodiment, the information/data provided by the high cognitiveload model 200 to the extraction engine 100 may be user specific. Forexample, the high cognitive load model 200 may be personalized based onuser behavior information/data stored in the user behavior database 260,a user profile, and/or the like. In an example embodiment, a user may beassociated with a class of users (e.g., new operators/drivers, elderlyoperators/drivers, aggressive operators/drivers, timidoperators/drivers, and/or the like) and the high cognitive load model200 may be personalized for a class of users. In an example embodiment,a class of users is a group of users that have at least one attribute incommon. For example, a classes of users may be generated by groupingusers by at least one of age, years driving, driving experience, drivingbehavior, user preferences, and/or the like. Thus, in variousembodiments, the information/data provided by the high cognitive loadmodel 200 to the extraction engine 100 may be personalized for the userand/or a class associated with the user.

At block 512, the high cognitive load portions are determined and/oridentified. For example, the identification engine 130 (operating on thenetwork apparatus 10) may identify and/or determine the high cognitiveload portions for the route based on the information/data received fromthe high cognitive load model 200 and the navigation information/datareceived from the navigation engine 300. In an example embodiment, thenavigation information/data received form the navigation engine 300comprises route information/data such as POI information/data, EOIinformation/data, and/or roadway information/data (e.g., from linkand/or node data records) corresponding to the route. For example, thenetwork apparatus 10 may comprise means, such as the processor 12,memory 14, and/or the like, for determining and/or identifying highcognitive load portions of a route. As noted above, the extractionengine 100 may further receive additional information/data (e.g., time,configuration information/data, and/or the like) and the determinationand/or identification of the high cognitive load portions may be furtherbased on the additional information/data. In various embodiments, theidentification engine 130 may compare one or more templates and/orthreshold requirements provided by the high cognitive load model 200 tothe route information/data provided by the navigation engine 300 todetermine if a template fits any portion of the route information/dataand/or if any portion of the route information/data satisfies athreshold requirement to determine and/or identify high cognitive loadportions of the route. For example, the identification engine 130 may beconfigured and/or programmed to determine portions of the route that arelikely to increase the cognitive load of a user navigating the routebased on the information/data provided by the high cognitive load model200 and the route information/data provided by the navigation engine300.

At block 514, familiarization information/data is extracted and/orgenerated. For example, the content generating engine 120 (operating onthe network apparatus 10) may extract and/or generated familiarizationinformation/data based on the configuration information/data (e.g., userpreferences for the user as stored in association with a user profilecorresponding to the user) and the route information/data correspondingto the identified and/or determined high cognitive load portions for theroute. For example, the network apparatus 10 may comprise means, such asprocessor 12, memory 14, and/or the like, for extracting and/orgenerating familiarization information/data. For example, theidentification engine 130 may pass information/data identifying the highcognitive load portions for the route to the content generating engine120. The content generating engine 120 may then use configurationinformation/data, such as user preferences for the user, to generateand/or extract familiarization information/data from the routeinformation/data for the route corresponding to the high cognitive loadportions of the route. For example, the content generation engine 120may generate the familiarization content, determine and/or identify thetrigger point at which the familiarization content should be provided tothe user, determine and/or generate setting modifications, and/or thelike based on the configuration information/data and the routeinformation/data.

In an example embodiment, the content extraction engine 120 may furthergenerate and/or extract one or more settings modifications, at block516. For example, the one or more settings modifications may beconfigured for updating one or more settings of the navigation engine300 (e.g., a portion of the navigation engine 300 such as a navigationapplication operating on the vehicle apparatus 20 and providing the IUIto the user via the user interface 28). For example, the contentextraction engine 120 (operating on the network apparatus 10) maydetermine, generate, and/or extract one or more settings modificationsbased on the configuration information/data, route information/data,and/or the like. For example, the settings modifications may beconfigured to update settings of a navigation application operating onthe vehicle apparatus 20 (e.g., to provide the IUI to the user via theuser interface 28) to provide the user with information regarding anupcoming maneuver more times and/or earlier in the route than if theuser was familiar with the route. In various embodiments, the settingsmodifications may cause one or more modifications of the operatingparameters of the vehicle 5. In an example embodiment, the vehicleapparatus 20 may be configured to manage, update, modify, and/or thelike one or more operating parameters of the vehicle 5 (e.g., brakingresponsiveness, handling responsiveness, daytime running lights and/orheadlight operation, driving mode, and/or the like) based on thesettings modifications. In an example embodiments, the settingsmodifications are included in an instance of familiarizationinformation/data and/or alongside the familiarization information/data.

At block 518, the route information/data and the familiarizationinformation/data is provided to the vehicle apparatus 20. In an exampleembodiment, one or more settings modifications may be provided to thevehicle apparatus 20 alongside and/or as part of the routeinformation/data and/or the familiarization information/data. Forexample, the network apparatus 10 may transmit and/or provide the routeinformation/data and the familiarization information/data (and possiblysettings modifications). For example, the network apparatus 10 maycomprise means, such as processor 12, memory 14, communicationsinterface 16, and/or the like, for transmitting and/or providing theroute information/data and the familiarization information/data (andpossibly settings modifications). In an example embodiment in which thenew route information/data include route information/data for a route,the network apparatus 10 may only provide the familiarizationinformation/data (possibly including and/or accompanied by settingsmodifications). For example, the vehicle apparatus 20 may receive thefamiliarization information/data (possibly including and/or accompaniedby settings modifications) and may also receive route information/data.For example, the vehicle apparatus 20 may comprise means, such as theprocessor 22, memory 24, communications interface 26, and/or the like,for receiving the familiarization information/data (possibly includingand/or accompanied by settings modifications) and may also receive routeinformation/data.

In an example embodiment, upon receipt of settings modifications, thevehicle apparatus 20 may enact the settings modifications (e.g.,changing and/or updating one or more settings of the vehicle apparatus20, operating parameters of the vehicle 5, and/or the like). In anexample embodiment, one or more settings modifications correspond tohigh cognitive load portions of the route and those settingsmodifications may be implemented at the trigger point (and/or a separatesettings trigger point) corresponding to the corresponding highcognitive load portions and indicated by the corresponding instance offamiliarization information/data.

The user may then navigate the route in accordance with the routeinformation/data. For example, the IUI presented to the user via theuser interface 28 may provide the user with a map showing the route,turn-by-turn instructions for navigating the route, and/or the like. Theuser may then navigate the route based on the route information/dataprovided via the IUI. The vehicle apparatus 20 may cause the locationsensor 29 to track the location of the user as the user navigates theroute. When the user arrives at a trigger point indicated by an instanceof familiarization information/data, the familiarization content of theinstance of familiarization information/data is provided to the user viathe IUI provided via the user interface 28. For example, in an exampleembodiment, when a vehicle apparatus 20 determines that the user islocated at a position (e.g., a street address, a geolocation such aslatitude and longitude, a particular intersection and/or road segment,and/or the like) along the route and/or has passed through a positionalong the route indicated by the trigger point of an instance offamiliarization information/data, the processor 22 and the navigationapplication causes the user interface 28 to provide the familiarizationcontent to the user. For example, in an example embodiment, when thevehicle apparatus 20 estimates that the user will reach a high cognitiveload portion in a particular amount of time (as indicated by thecorresponding trigger point), the processor 22 and the navigationapplication causes the user interface 28 to provide the familiarizationcontent to the user.

As should be understood, various embodiments relate to aiding a humanoperator/driver of a vehicle reduce his or her cognitive load whiletraversing an unfamiliar and/or novel route. However, some embodimentsmay be adapted to provide familiarization information/data to a vehiclecontrol system of an autonomous driving system and/or ADAS. In anexample of one such embodiment, a cognitive model configured todetermine and/or identify portions of a route at which an autonomousdriving system and/or ADAS may be “overwhelmed” or overloaded inprocessing sensor data collected as the vehicle 5 traverses the route(e.g., urban canyons in which localization cannot depend on GNSS data,areas having a large number of features and/or a large amount ofnon-static objects within a camera field of view, areas having largenumbers of pedestrians, and/or the like) is used to identify the highcognitive load portions. Thus, while the present invention is generallydescribed herein as corresponding to providing familiarization contentto a human user (e.g., a human operator/driver of a vehicle 5), variousembodiments provide familiarization information/data to an autonomousdriving system and/or ADAS.

Generating EOIs

In various embodiments, POIs are described by a POI model. In variousembodiments, a POI model comprises POI information/data formatted inaccordance with a defined data model. In an example embodiment, a POImay be associated with a type and the corresponding POI model maycorrespond to a defined data model of the corresponding type. Forexample, a first data model may be defined for use with POIs that arerestaurants and a second, different data model may be defined for usewith POIs that are public parks. Some non-limiting types of POIs mayinclude restaurants, storefronts, businesses, public services offices,shipping/receiving locations, gas stations, public parks, cross walks,traffic signals, bus and/or other public transportation stops/stations,and/or the like, in an example embodiment. In various embodiments, thePOI model may be formatted such that familiarization contentcorresponding to the POI may be readily determined, generated, and/orextracted therefrom.

In various embodiments, the data model comprises one or more staticelements for static information/data corresponding to the POI, whereinstatic information/data is generally not time dependent. For example,the static information/data for a POI may comprise a street address ofthe POI; a geolocation of the POI; a description of the POI; one or moreconsumer reviews corresponding to the POI; size, color, and/or otherappearance aspects of the POI; and/or other information/data regardingthe POI that is generally not time dependent. The data model may furthercomprise one or more dynamic elements for dynamic information/datacorresponding to the POI. Dynamic information/data that is generallytime dependent. For example, the dynamic information/data for a POI maycomprise an indication of whether a business, school, publicbuilding/park, and/or the like corresponding to the POI is open orclosed; if a bus is arriving and/or located at a bus stop correspondingto a POI; if the POI is expected to be experience/causing a highpedestrian and/or vehicle traffic situation (e.g., a stadium is hostinga professional sports game, concert, conference, and/or the like and ishigher levels of pedestrian and/or vehicle traffic are expected in thevicinity of the stadium); a cross walk signal has been activated; and/orother time dependent information/data. For example, the dynamicinformation/data may change based on time of day, day of the week,month, calendar day, live (e.g., real-time or near real-time) trafficinformation/data, and/or the like. In various embodiments, static and/ordynamic information/data corresponding to a POI along a route may beused to determine and/or identify high cognitive load portions of theroute and/or to determine, generate, and/or extract familiarizationcontent corresponding to the high cognitive load portions along theroute.

In various embodiments, it may be determined that two or more POIs maybe linked such that the link between the two or more POIs affects theexperience of navigating a route in the vicinity of the linked POIs. Forexample, two or more POIs may be linked to generate an EOI. In variousembodiments, an EOI is described by EOI an EOI model. In variousembodiments, an EOI model comprises EOI information/data formatted inaccordance with a defined EOI data model. In an example embodiment, anEOI may be associated with a type and the corresponding EOI model maycorrespond to a defined data model of the corresponding type. Forexample, a first data model may be defined for use with EOIs thatcorrespond to increased pedestrian traffic and a second, different datamodel may be defined for use with EOIs that correspond to difficult roadtopologies. In an example embodiment, the POIs linked to generate an EOImay be located near one another. For example, the POIs may be locatedwithin a predefined distance of at least one other POI of the EOI. In anexample embodiment, the predefined distance may be based on a type ofthe EOI. For example, a type EOI corresponding to increased pedestriantraffic may have a smaller predefined distance than a type of EOIcorresponding to increased vehicle traffic, road topology, and/or thelike. In various embodiments, the EOI model may be formatted such thatfamiliarization content corresponding to the EOI may be readilydetermined, generated, and/or extracted therefrom.

In various embodiments, an EOI data model may comprise static anddynamic elements. For example, EOI information/data comprises generallytime independent static information/data and time dependent dynamicinformation/data. For example, the dynamic information/data may changebased on time of day, day of the week, month, calendar day, live (e.g.,real-time or near real-time) traffic information/data, and/or the like.In various embodiments, EOI information/data is generated and/ordetermined based on the POI information/data corresponding to the two ormore POIs linked to generate the EOI. In various embodiments, staticand/or dynamic information/data corresponding to an EOI along a routemay be used to determine and/or identify high cognitive load portions ofthe route and/or to determine, generate, and/or extract familiarizationcontent corresponding to the high cognitive load portions along theroute.

In an example embodiment, an EOI model may comprise a list of POIidentifiers identifying the two or more linked POIs (and/or thecorresponding POI models) corresponding to the EOI, an indication of therelationship between the two or more POIs corresponding to the EOI, timeinformation/data that, in various circumstances, should be consideredfor the two or more POIs corresponding to the EOI, and/or otherinformation/data corresponding to the EOI. For example, an EOI model maybe represented by the array {POIM1, . . . , POIMn, POIR, T, O}, whereinPOIM1, . . . , POIMn, are POI identifiers identifying the two or morePOI models corresponding to the POIs linked to generate the EOI, POIRdescribes the relationship between the linked POIs, T is the timeinformation/data, and O is other information/data corresponding to theEOI.

For example, an EOI may be generated that comprises the following POIs:an ice cream shop, a school, and a cross walk signal. In this example,the relationship between the linked POIs may be ice cream shop within xmeter radius of school with routing between school and ice cream shopincluding a cross walk corresponding to the cross walk signal. In anexample embodiment, the status of the cross walk signal may be takeninto account. In an example embodiment, the status of the cross walksignal may not be taken into account because a significant number of thepedestrians expected to cross the cross walk are children. The timeinformation/data may comprise the hours that the ice cream shop is open,the lunch break time at the school, the evening/afternoon closing timefor the school, and/or the like. The other information/data may compriseother information/data to be considered as necessary/relevant such as,for example, reduced visibility due to fog or other weather conditions,the present speed of the vehicle (e.g., may indicate to the vehicleapparatus 20 how assertively and/or the timing when the user should beprovided with the corresponding familiarization information/data),and/or the like.

Another example EOI may be defined by the set of POI models comprising astadium, the available/open parking lots and/or parking decks within afirst predefined distance of the stadium, bus stops and/or other publictransit stops and/or stations within a second predefined distance of thestadium, and any routing POIs (e.g., cross walks, cross walk signals,and/or the like) between the parking lots, parking decks, and/or busstops and/or other public transit stops and/or stations and the stadium.

FIG. 7 provides a block diagram of an EOI generation system 600 forgenerating, determining, identifying, and/or the like EOIs. In anexample embodiment, the EOI generation system 600 comprises and/orreceives information/data from navigation engine 300. For example, thenavigation engine 300 may provide static POI information/data, dynamicPOI information/data, weather information/data, driving effortinformation/data, and/or other information/data to the EOI modelcreation engine 610 and/or the EOI creation engine 110. In an exampleembodiment, if EOIs are being generated, extracted, and/or identifiedfor a particular route, the navigation engine 300 may provide routeinformation/data for the route. In an example embodiment, the EOIgeneration system 600 further comprises a navigation data interface 630configured to allow the EOI generation system 600 to interface withvarious sources of geographic information/data (e.g., a geographicdatabase, digital map, and/or the like).

In various embodiments, the EOI generation system 600 includes anexternal data extraction model 620. For example the external dataextraction model 620 may be the high cognitive load model 200 (e.g., acognitive navigation model 205), a fuel saving model, and/or other dataextraction model. The external data extraction model 620 may begenerated externally to the EOI generation system 600 and then used toinform the creation of EOI models. In an example embodiment, theexternal data extraction model 620 may comprise EOI data models that maybe used for generating EOI models and EOI generation system 600 may notinclude the EOI model generation engine 610. In various embodiments, theexternal data extraction model 620 provides data extractioninformation/data to the EOI model generation engine 610 and/or EOIgeneration engine 110. For example, the external data extraction model620 may indicate elements to include in the EOI data model such that EOImodels generated based on the EOI data model will be configured toprovide efficient and effective information/data for a desired purpose.For example, if the external data model 620 is a cognitive navigationmodel 205, the EOI data models may be configured to generate EOI modelsthat provide efficient and effective information/data for routedetermination and/or familiarization information/data extraction,determination, and/or generation.

In an example embodiment, the EOI model generation engine 610 isconfigured to receive data extraction information/data provided by theexternal data extraction model 620 and use the data extractioninformation/data to generate EOI models from the information/dataprovide by the navigation engine 300 and/or other geographicinformation/data. For example, in an example embodiment, the EOI modelgeneration engine 610, with the use of machine learning engine 650,learns to identify clusters of POIs that may be linked to form an EOI.For example, an EOI model generation engine 61 may be trained usingmachine learning as supported by the machine learning engine 650. In anexample embodiment, the EOI model generation engine 610 is configured todefine one or more EOI data models that may be used for generatingand/or describing EOIs based on information/data provided by thenavigation engine 300 and/or other geographic information/data. Forexample, the EOI model generation engine 610 may define one or more datamodels corresponding to different types of EOIs and/or differentscenarios that may cause POIs to be linked and/or have a relationshipwith one another. For example, one example EOI model may be configuredto provide a data model for EOIs comprising (a) a first POI that is aschool and/or other POI that children are known to frequent, (b) anattraction of interest to children (e.g., ice cream shop, candy store,soccer field, and/or the like) within a predefined radius of the firstPOI (e.g., a tenth of a mile, a quarter of a mile, half a mile, half akilometer, one kilometer, one and a half kilometers, and/or the like),and (c) any cross walks, cross walk signals, and/or other routing POIslocated along expected walking routes between the first POI and thesecond POI. In an example embodiment, the EOI model generation engine610 generates one or more EOI models to be used as templates foridentifying and/or determining EOIs from information/data provided bythe navigation engine 300 and/or other geographic information/data. Inan example embodiment, one or more dynamic elements of the data modelmay allow for the consideration of outdoor temperature and/or otherweather information/data (e.g., few children are likely to be walking tothe soccer field after school if it is raining outside or extremelycold/hot), time of day (e.g., it is unexpected that children will bewalking from the school to an ice cream shop at 9 am), day of the weekand/or calendar day (e.g., for determining if the school and/or otherPOIs are open or closed that day), and/or the like.

The EOI model generation engine 610 may be configured to provide the oneor more defined EOI data models to the EOI generation engine 110. Invarious embodiments, the EOI model generation engine 610 may furtherprovide the EOI generation engine 110 within information/data such asdriving characteristics (e.g., example characteristics ofoperators/drivers that should be warned, alerted, and/or notifiedregarding the EOI), behavioral aspects (e.g., information/data regardingvarious POIs that may be linked due to human behavior such as thelinking of a school to an ice cream shop or a parking lot to a nearbystadium), constraints (e.g., the predefined distances between POIs thatare available for linking into various types of EOIs), and/or otherinformation/data. The EOI generation engine 110 may then use the EOIdata models and other information/data provided by the EOI modelgeneration engine 610 to identify, determine, and/or generate EOIs basedon the information/data provided by the navigation engine 300 and/orother geographic information/data. For example, the EOI generatingengine 110 may be determine if there are any clusters of POIs along theroute that satisfy one or more conditions, match an EOI template, fit anEOI data model, and/or the like. If a cluster of POIs along the route(and/or in a geographic area being considered) are determined to satisfyone or more conditions, match an EOI template, fit an EOI data model,and/or the like, the cluster of POIs may be linked to generate an EOIand a corresponding EOI model may be generated using an appropriate EOIdata model and the POI models corresponding to the linked POIs.

In an example embodiment, an EOI model generation engine 610 isconfigured to receive human behavior information/data from, fromexample, user behavior database 260. For example, the human behaviorinformation/data may be used to determine and/or define one or morehuman behavior and/or interest criteria. In an example embodiment, thehuman behavior information/data may be used as an input for training anEOI model generation engine 610 using machine learning engine 650.

FIG. 8 provides a flowchart illustrating various processes andprocedures that may be performed to generate an EOI, according to anexample embodiment. Starting at block 702, the extraction engine 100receives data extraction information/data from external data extractionmodel 620. For example, the EOI model generation engine 610 (operatingon the network apparatus 10) may receive data extractioninformation/data. For example, the network apparatus 10 may comprisemeans, such as processor 12, memory 14, communications interface 16,and/or the like, for receiving and/or accessing data extractioninformation/data. In various embodiments, the data extraction model maydefine, identify, indicate, and/or the like at least a portion of theinformation/data that should be included in an EOI model. For example,the data extraction information/data may define, identify, indicate,and/or the like one or more fields, elements, and/or the like of atleast one EOI data model. In an example embodiment, the external dataextraction model 620 is a high cognitive load model 200 and/or acognitive navigation model 205 and the data extraction information/datamay indicate one or more data fields and/or elements to be included inat least one EOI data model such that the resulting EOI models may beused to efficiently and effectively identify high cognitive loadportions of a route based on the EOI model and/or efficiently andeffectively generate, extract, and/or determine familiarization contentfor a corresponding high cognitive load portion based on the EOI model.

At block 704, navigation information/data is received from thenavigation engine 300. In an example embodiment, route information/datais received from the navigation engine 300. In an example embodiment,route information/data is navigation information/data corresponding to aroute from an origin location to a destination location. For example,the EOI model generation engine 610 (operating on the network apparatus10) may receive navigation information/data (e.g., provided by thenavigation engine 300). In an example embodiment, the navigationinformation/data comprises static elements of POI information/data;dynamic elements of POI information/data; expected, historical, current,and/or (near) real-time weather information/data; information/dataregarding road segments and/or intersections linking road segments(e.g., link and/or node data records); and/or other geographicinformation/data and/or information/data corresponding to at least aportion of a road network. For example, the network apparatus 10 maycomprise means, such as processor 12, memory 14, communicationsinterface 16, and/or the like, for receiving and/or accessing navigationinformation/data.

At block 706, the EOI generation engine 610 (operating on the networkapparatus 10) generates, defines, determines, and/or the like one ormore EOI data models. For example, the network apparatus 10 may comprisemeans, such as processor 12, memory 14, and/or the like, for generating,defining, determining, and/or the like one or more EOI data models. Invarious embodiments, the EOI data models are generated, defined,determined, and/or the like based on the navigation information/data andthe data extraction information/data. In various embodiments, the EOIdata models may be generated, defined, determined, and/or the like usingmachine learning. For example, the EOI model generation engine 610, viathe machine learning engine 650, may learn patterns that may be used toidentify clusters and/or groups of POIs that may be linked (e.g., viastatic and/or dynamic elements of the POIs) to generate an EOI. Invarious embodiments, a cluster and/or group of POIs that may be linkedto generate an EOI are related to one another in way that is likely toaffect the driving experience (e.g., the experienced cognitive load) ofa user navigating a route past at least one POI of the EOI. For example,the cluster and/or group of POIs may be linked in a manner that isexpected to cause increased pedestrian and/or vehicle traffic betweentwo or more POIs, increase the driving effort required to effectivelyand/or efficiently navigate past at least a portion of the EOI, and/orthe like. For example, a first POI of a first EOI may be a school, asecond POI of the first EOI may be an ice cream shop within a predefineddistance of the school, and a third POI of the first EOI may be a crosswalk between the school and the ice cream shop. In another example, afirst POI of a second EOI is a stadium, a second POI of the second EOIis a public parking lot within a predefined distance of stadium, and athird POI of the second EOI is a cross walk signal along a route betweenthe public parking lot and the stadium.

In various embodiments, the EOI model generation engine 610 generatesand/or defines EOI data models. For example, an EOI data model may be atemplate data record that may be populated with EOI information/data todescribe an EOI. In various embodiments, an EOI data model comprisesstatic elements and dynamic elements. In an example embodiment, the EOIdata model may define and/or indicate one or more relationshipconditions that a cluster and/or group of POIs must satisfy to be linkedas an EOI corresponding to the EOI data model. In an example embodiment,the relationship conditions comprise one or more predefined distancecriteria. For example, the EOI data model may indicate that each POI ofthe cluster and/or group of POIs that defines the EOI should be within apredefined distance of all of the other and/or at least one other POI ofthe cluster and/or group of POIs. The EOI data model may indicate and/ordefine the predefined distance. In an example embodiment, the one ormore relationship conditions may comprise one or more human behaviorand/or interest criteria. For example, the human behavior and/orinterest criteria may indicate types of POIs that may be related throughhuman behavior and/or interest. In an example embodiment, a humanbehavior and/or interest criteria may correspond to a road geometryand/or topology that may give rise to increased cognitive load when auser navigates a route along, by, and/or in the vicinity of the clusterand/or group of EOIs. Inn an example embodiment, a human behavior and/orinterest criteria may correspond to one or more reasons that mayincrease human and/or vehicle traffic between two or more POIs.

In an example embodiment, an EOI data model may correspond to aparticular type of EOI. For example, a first EOI data model may bedefined for use with EOIs that correspond to increased pedestriantraffic and a second, different EOI data model may be defined for usewith EOIs that correspond to difficult road topologies. For example, anEOI data model may define a predefined distance corresponding to thecorresponding type of EOIs. In an example embodiment, the POIs of an EOIare located within the predefined distance from one another. In anexample embodiment, each POI of an EOI is located within the predefineddistance from at least one other POI of the EOI. Thus, in variousembodiments, the POI linked to generate an EOI are geographically linked(e.g., by being located within the predefined distance of one another)in addition to being related via human behavior and/or interest.

At block 708, the EOI generation engine 110 (operating on the networkapparatus 10) may generate, identify, and/or determine one or more EOIs.For example, the network apparatus 10 may comprise means, such as theprocessor 12, memory 14, and/or the like, for generating, identifying,and/or determining one or more EOIs. In an example embodiment, the oneor more EOIs are generated, identified, and/or determined using the oneor more EOI data models and/or template EOI data records generated bythe EOI model generation engine 610.

In an example embodiment, the one or more EOIs are generated,identified, and/or determines based on navigation information/data(e.g., route information/data). For example, an EOI generation engine110 may analyze navigation information/data using and/or based on theEOI data models, template EOI data records, and/or the like to identifyand/or determine clusters and/or groups of POIs that meet therelationship conditions of an EOI data model and/or template EOI datarecord. When a cluster and/or group of POIs that meet the relationshipconditions of an EOI data model, the EOI generation engine 110 maygenerate an EOI model (e.g., populate and EOI data model and/or templateEOI data record) with EOI information/data generated, determined, and/orextracted from the POI models corresponding to the POIs of the clusterand/or group of POIs corresponding to the EOI. In various embodiments,the relationship conditions of an EOI data model and/or template EOIdata record comprise the human behavior and/or interest relationshipcriteria and the predefined distance criteria corresponding to the EOIdata model and/or template EOI data record. For example, the EOIgeneration engine 110 may analyze navigation information/data (e.g.,route information/data) to identify clusters and/or groups of POIs thatsatisfy the relationship conditions of one or more EOI models, and, forclusters and/or groups of POIs identified as satisfying the relationshipconditions, generate corresponding EOI models describing the identifiedand/or generated EOI comprising the cluster and/or group of POIs.

In an example embodiment, a plurality of EOI generation engines 110 maybe used. For example, each EOI generation engine 110 may be configuredto identify EOIs corresponding to a particular EOI data model and/ortemplate EOI data record. In another example, each EOI generation engine110 may be configured to identify EOIs of a particular type.

At block 710, the identified, generated, and/or determined EOIs may beprovided. For example, the EOI generation engine 110 (operating on thenetwork apparatus 10) may provide EOI models (and/or portions thereof)describing the identified, generated, and/or determined EOIs. Forexample, the EOI models (and/or portions thereof) may be received by theidentification engine 130 (operating on the network apparatus 10) foruse in identifying and/or determining high cognitive load portions of aroute and/or by the content generating engine 120 (operating on thenetwork apparatus 10) for use in generating, extracting, and/ordetermining familiarization information/data (e.g., familiarizationcontent) for one or more high cognitive load portions of a route. Forexample, the network apparatus 10 may comprise means, such as processor12, memory 14, communications interface 16, and/or the like forproviding and/or receiving the one or more EOI models and/or portionsthereof.

At block 712, the identified, generated, and/or determined EOIs may bestored, for example, in an EOI data store (e.g., an EOI database). Forexample, the network apparatus may cause EOI models describing theidentified, generated, and/or determined EOIs to be stored in an EOIdata store. For example, the network apparatus 10 may comprise means,such as processor 12, memory 14, communications interface 16 and/or thelike, for storing EOI models describing the identified, generated,and/or determined EOIs in an EOI data store. For example, theidentification engine 130 (operating on the network apparatus 10) and/orthe content generating engine 120 (operating on the network apparatus10) may access EOI models and/or portions thereof stored in the EOI datastore for use in identifying and/or determining high cognitive loadportions of a route and/or generating, extracting, and/or determiningfamiliarization information/data (e.g., familiarization content) for oneor more high cognitive load portions of a route. In various embodiments,the EOI models corresponding to the identified, generated, and/ordetermined EOIs are stored for use in performing one or more navigationfunctions (e.g., localization, route determination, lane level routedetermination, lane maintenance, route guidance, lane level routeguidance, provision of traffic information/data, provision of lane leveltraffic information/data, provision of route familiarization content,and/or the like).

In an example embodiment, the data extraction information/data receivedfrom the external data extraction model 620 may comprise one or more EOIdata models, template EOI data records, and/or the like. In such anembodiment, the extraction engine 100 may receive the data extractioninformation/data as described with relation to block 702, receive thenavigation information/data as described with relation to block 704, andthen move to identifying, generating, and/or determining EOIs asdescribed with relation to block 708. For example, in some embodiments,the data extraction information/data may comprise one or more EOI datamodels, template EOI data records, and/or the like, and the EOIgeneration system 600 may not comprise and/or may not make use of theEOI model generation engine 610.

Human Cognitive Navigation Model

In various embodiments, a high cognitive load model 200 provides theextraction engine 100 with scenario information/data and/or scenariotemplates that may be used by the identification engine 130 to identifyand/or determine high cognitive load portions of a route and by thecontent generating engine 120 to generate, determine, and/or extractfamiliarization information/data corresponding to the high cognitiveload portions of the route. In various embodiments, the familiarizationinformation/data comprises familiarization content to be provided to auser (e.g., via an IUI provided via the user interface 28 of the vehicleapparatus 20) and information/data regarding how and when/where thefamiliarization content is to be provided to the user. In an exampleembodiment, the high cognitive load model 200 is and/or comprises acognitive navigation model 205 configured for modeling human cognitiveprocessing in various navigation scenarios. In an example embodiment,the cognitive navigation model is trained using navigationinformation/data, user behavior information/data, and/or feedbackdirectly from one or more users (e.g., a user questionnaire). In anexample embodiment, the cognitive navigation model is trained usingmachine learning with support from a machine learning engine.

In various embodiments, a high cognitive load model 200 may bepersonalized for an individual user, a class of users, and/or may begeneric to all users. For example, a high cognitive load model 200 thatis generic to all users may be used as the data extraction model 620 ofan EOI generation system 600 and high cognitive load models 200 that arepersonalized for a user and/or a class of users may be used as the highcognitive load model 200 of familiarization system 500, in an exampleembodiment. In various embodiments, personalizing the high cognitiveload model for an individual user may include the using user behaviorinformation/data (e.g., stored in the user behavior database 260),information/data from a driver questionnaire completed by the user,profile information/data from a user profile corresponding to the user,user preferences (e.g., as indicated in the user profile correspondingto the user), and/or other information/data corresponding to theindividual user in the generation of the high cognitive load model 200.In various embodiments, users may be grouped into classes of users. Invarious embodiments, users are grouped into classes based on one or moreuser attributes that users have in common. For example, users may begrouped based on one or more of age, driving experience, number of yearsdriving, memory problems, individual user preferences, similar answersbeing provided by the users on a driver questionnaire, drivingaggressiveness, and/or the like. In various embodiments, personalizingthe high cognitive load model for a class of users may include the usinguser behavior information/data (e.g., stored in the user behaviordatabase 260) corresponding to one or more users in the class of users,information/data from driver questionnaires completed by one or moreusers in the class of users, profile information/data from user profilescorresponding to one or more users in the class of users, userpreferences (e.g., as indicated in user profiles corresponding to one ormore users in the class of users), and/or other information/datacorresponding to one or more users in the class of users in thegeneration of the high cognitive load model 200.

FIG. 9 provides a block diagram of an example model generation system900. In an example embodiment, the model generation system 900 comprisessome form of direct user input, such as a driver questionnaire 915. Inan example embodiment, the driver questionnaire 915 takes the form of asurvey or other questionnaire that a user may complete and the answersprovided by the user may be stored in a questionnaire database and/orthe like. In an example embodiment, the driver questionnaire 915 maytake the form of information/data extracted from a user profilecorresponding to a user and/or user preferences. For example, the driverquestionnaire 915 may provide the dynamic model creation engine 910 withdemographic information/data regarding a individual user and/or class ofusers (e.g., age, number of years driving, driving experience level,and/or the like). In an example embodiment, the driver questionnaire 915may provide the dynamic model creation engine 910 with information/dataregarding scenarios that a user may find stressful to navigate (e.g., anavigation scenario that raises the user's cognitive load). For example,in one example embodiment, the driver questionnaire 915 may ask users torate various scenarios on a scale of not stressful to very stressful,and/or the like. In various embodiments, the results and/or responses todriver questionnaires 915 submitted by one or more users may be storedin a questionnaire data store (e.g., database) on memory 14 of thenetwork apparatus 10 and/or another memory accessible to the networkapparatus 10.

In various embodiments, the model generation system 900 comprises userbehavior database 260. In various embodiments, the user behaviordatabase is stored in memory 14 of the network apparatus 10 and/or inanother memory accessible to the network apparatus 10. For example, thedynamic model creation engine 910 may be personalized for an individualuser and/or class of users based on user behavior information/datastored in the user behavior database 260, a user profile, and/or thelike. For example, the dynamic model creation engine 910 may analyzeuser behavior information/data stored in the user behavior database 260to determine how users in general, users of a class of users, and/or anindividual user has responded to various navigation scenarios in thepast. For example, the determination of types of navigation scenariosthat are stressful (e.g., increase cognitive load for a user navigatingthrough the navigation scenario) may be based on behaviorinformation/data stored in the user behavior database 260.

In various embodiments, the model generation system 900 comprises amodel configuration engine 450. In an example embodiment, the modelconfiguration engine 450 is part of the configuration engine 400. Invarious embodiments, the model configuration engine 450 operates on thenetwork apparatus 10 and/or as a distributed application operating inpart on the network apparatus 10 and in part on the vehicle apparatus20. In various embodiments, the model configuration engine 450 isconfigured to receive configuration information/data, store and/orformat the received configuration information/data and provide theconfiguration information/data to the dynamic model creation engine 910.For example, one or more users may fill out an operator/driverquestionnaire or survey regarding navigation scenarios and/or drivingsituations that may cause the user stress (e.g., increase the user'scognitive load), user preferences and/or feedback regarding what type offamiliarization content (e.g., content, how the content is provided,and/or the like) help to reduce the user's cognitive load, and/or thelike. The questionnaire or survey results may be provided to the modelconfiguration engine 450 as configuration information/data. For example,in an example embodiment, the model configuration engine 450 may accessdriver questionnaire results and/or responses stored in a questionnairedata store and provide the results and/or responses to the dynamic modelcreation engine 910.

In an example embodiment, the model generation system 900 comprises anavigation engine 300. In an example embodiment, a navigation engine 300is configured for providing navigation information/data. For example, anavigation engine 300 may access a geographic database and provide thedynamic model creation engine 910 with geographic information/data suchas POI information/data (static and/or dynamic elements), EOIinformation/data (static and/or dynamic elements), roadwayinformation/data (e.g., link and/or node data records), and/or the like.In an example embodiment, the navigation engine 300 may operate at leastin part on the network apparatus 10 to provide the dynamic modelcreation engine 910 with geographic information/data.

In various embodiments, the dynamic model creation engine 910 isconfigured to generate a high cognitive load model 200. In variousembodiments, the dynamic model creation engine 910 generates a cognitivenavigation model 205. For example, the cognitive navigation model 205may be generated based on the user behavior information/data,questionnaire information/data, and navigation information/data. In anexample embodiment, the cognitive navigation model 205 is trained usingthe user behavior information/data, questionnaire information/data,and/or navigation information/data via machine learning supported by themachine learning engine 950. In an example embodiment, the machinelearning engine 950 may use an unsupervised machine learning algorithmto train the cognitive navigation model 205. For example, the dynamicmodel creation engine 910 may be a neural network and/or deep net thatis configured and/or trained to receive user behavior information/data,questionnaire information/data, and/or navigation information/data asinput and provide one or more instances of scenario information/dataand/or scenario templates corresponding to high load navigationscenarios (e.g., navigation scenarios that are likely and/or expected toincrease a user's cognitive load as the user navigates the navigationscenario) as output.

In various embodiments, the cognitive navigation model 205 is comprisesone or more instances of scenario information/data and/or scenariotemplates that each correspond to a high load navigation scenario. Invarious embodiments, a high load navigation scenario may relate to anEOI and/or POI (e.g., based on static and/or dynamic elements thereof),road geometry and/or topology, a maneuver to be navigated through (e.g.,taking a right and then taking an immediate left on a road havingmultiple lanes of traffic in the same direction), and/or the like. Invarious embodiments, an instance of scenario information/data and/or ascenario template may be compared to route information/data (e.g., bythe identification engine 130) to identify high cognitive load portionsof a route corresponding to and/or matching a high load navigationscenario described by the instance of scenario information/data and/orscenario template. For example, an instance of scenario information/dataand/or scenario template may comprise the information/data required foridentifying a portion of a route (based on the route information/data)that is similar to an example high load navigation scenario by matchinga navigation scenario profile corresponding to the example high loadnavigation scenario, and/or that satisfies one or more thresholdrequirements determined and/or defined based on an example high loadnavigation scenario and provided by the instance of scenarioinformation/data and/or scenario template.

In various embodiments, an instance of scenario information/data and/orscenario template comprises information/data identifying, indicating,and/or the like familiarization content to be generated, determined,and/or extracted for a high cognitive load portion that matches,satisfies, and/or is identified based on the instance of scenarioinformation/data and/or scenario template. For example, the instance ofscenario information/data and/or scenario template may indicate textand/or graphics to be provided to a user (e.g., via the user interface28) and/or a text and/or graphic template(s) to be populated andprovided to the user (e.g., via the user interface 28) when the userreaches the trigger point corresponding to high cognitive load portion.In an example embodiment, the instance of scenario information/dataand/or scenario template comprises information/data that defines thetrigger point, a type of trigger point (e.g., distance to the highcognitive load portion and/or time before the user is expected to reachthe high load), and/or other information/data that may be taken intoaccount when determining the trigger point for high cognitive loadportions matching the navigation scenario.

As noted above, a dynamic model creation engine 910 may be personalizedfor an individual user, a class of users, and/or users in general.Similarly, the cognitive navigation model 205 may be personalized for anindividual user, class of users, and/or users in general. In an exampleembodiment, the cognitive navigation model 205 is personalized by beinggenerated and/or created by a dynamic model creation engine 910 that ispersonalized for the same individual user, class of users, and/or usersin general. In an example embodiment, a dynamic model creation engine910 that is not personalized for users in general (e.g., that is notparticular to an individual user and/or class of users) may be used togenerate a cognitive navigation model 205 that is personalized for anindividual user and/or class of users by considering user behaviorinformation/data and/or questionnaire information/data corresponding tothe individual user and/or class of users when generating the cognitivenavigation model 205. In an example embodiment, a dynamic model creationengine 910 that is personalized to a class of users may be used togenerate a cognitive navigation model 205 that is personalized to anindividual user that is a member of the corresponding class of users byconsidering user behavior information/data and/or questionnaireinformation/data particular to the individual user when generating thecognitive navigation model 205.

In various embodiments, the cognitive navigation model 205 may comprisean indicator of the individual user and/or class of users the cognitivenavigation model 205 is personalized for. For example, the cognitivenavigation model 205 may comprise a user identifier corresponding to auser profile corresponding to the individual user to which the cognitivenavigation model has been personalized. For example, the cognitivenavigation model 205 may comprise a class identifier corresponding to aclass of users for which the cognitive navigation model has beenpersonalized. In an example embodiment, if the cognitive navigationmodel 205 is personalized for users in general, the cognitive navigationmodel 205 may or may not comprise an indication that the cognitivenavigation model 205 corresponds to a generic user and/or users ingeneral.

FIG. 10 provides a flowchart illustrating example processes, procedures,and/or operations for generating and providing a cognitive navigationmodel 205 for use in determining and providing a user withfamiliarization content as a user navigates a route. Starting at block1002, a dynamic model creation engine 910 is generated, programmed,trained, and/or the like. For example, the network apparatus 10 maygenerate and/or trained a dynamic model creation engine 910. Forexample, the network apparatus 10 may comprise means, such as processor12, memory 14, and/or the like, for generating and/or training a dynamicmodel creation engine 910. For example, the network apparatus 10 may usea machine learning engine 950 (e.g., operating on the network apparatus10) to train the dynamic model creation engine 910. In variousembodiments, user behavior information/data may be accessed and/orreceived from the user behavior database 260, questionnaireinformation/data corresponding to driver questionnaire 915 may beaccessed and/or received from the questionnaire database, and/ornavigation information/data may be accessed and/or received fromnavigation engine 300 and used to generate, program, and/or train thecognitive navigation model 205.

At block 1004, a cognitive navigation model 205 is generated. Forexample, the network apparatus 10 may operate a dynamic model creationengine 910 to generate a cognitive navigation model 205. For example,the network apparatus 10 may comprise means, such as processor 12,memory 14, and/or the like for generating a cognitive navigation model205. In an example embodiment, the generation of the cognitivenavigation model 205 comprises identifying and/or determining high loadnavigation scenarios (e.g., navigation scenarios that are likely and/orexpected to be stressful and/or cause the user increased cognitive loadas the user prepares to and/or navigates the navigation scenario) (atblock 1006) and generating scenario information/data and/or scenariotemplates corresponding to the identified and/or determined navigationscenarios that are likely and/or expected to be stressful for a usernavigating the navigation scenario (at block 1008).

For example, the dynamic model creation engine 910 may be operated, atblock 1006, to analyze navigation information/data (e.g., based on userbehavior information/data and/or questionnaire information/data) toidentify and/or determine high load navigation scenarios.

Once one or more high load navigation scenarios have been identifiedand/or determined, the dynamic model creation engine 910 may generatecorresponding instances of scenario information/data and/or scenariotemplates, at block 1008. In various embodiments, an instance ofscenario information/data and/or scenario template comprises scenarioidentifying information/data for identifying high cognitive loadportions of a route by identifying portions of a route that match and/orare similar to a high load navigation scenario and information/data forgenerating familiarization information/data (e.g., familiarizationcontent and/or a trigger point) for an identified high cognitive loadportion that matches and/or is similar to the high load navigationscenario.

For example, an instance of scenario information/data and/or scenariotemplate may comprise scenario identifying information/data foridentifying and/or determining portions of a route, based on routeinformation/data (e.g., EOI information/data, POI information/data,roadway information/data (e.g., link and/or node records), and/or thelike corresponding to a route), that match the high load navigationscenario. In an example embodiment, a portion of a route matches a highload navigation scenario if the portion of the route matches a profileof the high load navigation scenario (e.g., as provided by thecorresponding instance of scenario information/data and/or scenariotemplate). In an example embodiment, a portion of a route matches a highload navigation scenario if the portion of the route satisfies one ormore threshold requirements corresponding to the high load navigationscenario (e.g., as provided by the corresponding instance of scenarioinformation/data and/or scenario template). In an example embodiment, aportion of a route matches a high load navigation scenario if theportion of the route fits a template provided by the correspondinginstance of scenario information/data and/or scenario template. Thus, invarious embodiments, an instance of scenario information/data and/orscenario template comprises a profile of a navigation scenario, one ormore threshold requirements corresponding to a high load navigationscenario, a template corresponding to a high load navigation scenario,and/or the like. In various embodiments, the profile of a high loadnavigation scenario, one or more threshold requirements corresponding toa high load navigation scenario, template corresponding to a high loadnavigation scenario, and/or the like is generated by the dynamic modelcreation engine 910 responsive to identifying a high load navigationscenario.

For example, an instance of scenario information/data and/or scenariotemplate may comprise familiarization content and/or a template that maybe populated and provided as familiarization content for an identifiedhigh cognitive load portion that matches and/or is similar to thecorresponding high load navigation scenario. For example, an instance ofscenario information/data and/or scenario template may comprise textand/or graphics to be provided to a user (e.g., via the user interface28) and/or text and/or graphic template(s) to be populated and providedto the user (e.g., via the user interface 28) when the user reaches thetrigger point corresponding to an identified high cognitive load portionthat matches and/or is similar to the corresponding high load navigationscenario. In various embodiments, the instance of scenarioinformation/data and/or scenario template may comprise information/dataindicating how the familiarization content should be provided to a userin various situations. For example, in an example embodiment, theinstance of scenario information/data and/or scenario template comprisesinformation/data that defines the trigger point, a type of trigger point(e.g., distance to the high cognitive load portion and/or time beforethe user is expected to reach the high load), and/or otherinformation/data that may be taken into account when determining thetrigger point for high cognitive load portions matching the high loadnavigation scenario. For example, the instance of scenarioinformation/data and/or scenario template may indicate that if the useris traveling at greater than a particular speed, the familiarizationcontent is to be provided with greater urgency and/or more assertively(e.g., louder, in a more assertive voice/tone, and/or the like).

At block 1010 the cognitive navigation model 205 is provided. Forexample, the cognitive navigation model 205 may be provided to anextraction engine 100 (operating on the network apparatus 10). Forexample, the network apparatus 10 may comprise means, such as processor12, memory 14, and/or the like, for providing the cognitive navigationmodel 205. In various embodiments, an extraction engine 100 may use thecognitive navigation model 205 to generate familiarizationinformation/data for a route. For example, the extraction engine 100 mayuse the cognitive navigation model 205 to identify and/or determine highcognitive load portions of a route and to generate, determine, and/orextract familiarization information/data for the high cognitive loadportions.

At block 1012, user feedback is received. For example, the networkapparatus 10 may receive user feedback from one or more vehicleapparatuses 20. For example, the network apparatus 10 may comprisemeans, such as processor 12, memory 14, and/or communications interface16, for receiving feedback from one or more vehicle apparatuses 20. Inan example embodiment, the user feedback is provided via user responsesto a follow up driver questionnaire (e.g., completed via an IUI providedvia the user interface 28). In an example embodiment, the user feedbackis provided as biometric data corresponding to the user that wascaptured as the user navigated the route. In an example embodiment, thebiometric data is captured by one or more sensors of the vehicleapparatus 20. In an example embodiment, the biometric data is capturedby a user apparatus such as a wearable device (e.g., smart watch,Fitbit, and/or the like) that provides the captured biometric data tothe vehicle apparatus 20 and/or to the network apparatus 10 (e.g., viathe cloud and/or one or more networks 50). In an example embodiment, theuser feedback is provided via analyzing user behavior information/datacaptured as the user navigated the route. For example, one or moresensors of the vehicle apparatus 20 may capture information/data as theuser navigates the route that indicate and/or correspond to userbehavior (e.g., speed, acceleration, intensity of braking, use ofblinkers, and/or the like). The user behavior information/data may beprovided to the network apparatus 10 for analysis and/or inclusion inthe user behavior database 260. In various embodiments, user feedbackmay be associated with a individual user, a class of users, and/or withusers in general. As should be understood, various forms of userfeedback may be received by the network apparatus 10.

At block 1014, the dynamic model creation engine 910 is updated based onthe received user feedback. For example, the network apparatus 10 mayanalyze the received user feedback and update the dynamic model creationengine 910 based thereon. For example, the network apparatus 10 mayprovide the received user feedback to the dynamic model creation engine910 as user behavior information/data and/or questionnaireinformation/data and update, continue to configure and/or train (e.g.,using machine learning engine 950), and/or re-configure and/or retrain(e.g., using machine learning engine 950) the dynamic model creationengine 910 based at least in part on the received user feedback. Forexample, the network apparatus 10 may comprise means, such as processor12, memory 14, and/or the like, for updating, continuing to configureand/or train, and/or re-configuring and/or retraining the dynamic modelcreation engine 910 based at least in part on the received userfeedback. The process may then return to block 1004.

Technical Advantages

Various embodiments of the present invention provide methods,apparatuses, systems, computer program products, and/or the like forproviding familiarization content to a user navigating a route (e.g.,driving/operating a vehicle 5 along a route). In various embodiments,the route may be unfamiliar and/or novel to the user. In variousembodiments, the familiarization content is provided to the user via anIUI provided via a user interface 28 of a vehicle apparatus 20. Thefamiliarization content is configured to aid a user in navigating a highcognitive load portion of a route with a decreased cognitive loadcompared to if the user was not provided the familiarization content.Therefore, the user may focus more on the task at hand (e.g.,driving/operating the vehicle 5). Thus, in various embodiments, animproved IUI is provided wherein a user may provide input regarding aparticular trip (e.g., provide input indicating a destination location)and be provided with not only an overview and/or turn-by-turninstructions for a route to the destination location, but appropriatelytimed familiarization content to decrease the user's stress level and/orcognitive load as the user navigates the route. Thus, variousembodiments of the present invention provide an improvement tonavigation and/or routing technologies and corresponding userinterfaces.

Various embodiments of the present invention provide methods,apparatuses, systems, computer program products, and/or the like forincorporating dynamic elements of a POI into a POI model that may beused for identifying high cognitive load portions of a route. In anexample embodiment, the dynamic elements may corresponding to (near)real-time and/or current information/data corresponding to a POI. Forexample, a dynamic element of a POI model corresponding to a cross walksignal may indicate the status of the cross walk signal (e.g., asreceived from a broadcast from the cross walk signal itself, a trafficcontrol computing system, and/or the like). Thus, various embodimentsare configured to provide a user with improved, (near) real-timeaccurate route information/data and/or familiarization content. Invarious embodiments, the dynamic elements of a POI may be used toidentify high cognitive load portions and/or to generate thecorresponding familiarization content. Thus, various embodiments of thepresent invention provide an improvement to navigation and/or routingtechnologies.

Various embodiments of the present invention provide methods,apparatuses, systems, computer program products, and/or the likegenerating and using EOIs by linking two or more POIs. In variousembodiments, an EOI model describing an EOI may comprise static elementsand dynamic elements. Various embodiments use an automated understandingof the relationships between the POIs that comprise an EOI to provide auser with improved route information/data and/or familiarizationcontent. For example, EOIs provide a user with more context regardingtwo or more POIs than the individual POIs can provide individually.Thus, various embodiments are configured to provide a user withimproved, (near) real-time accurate route information/data and/orfamiliarization content. In various embodiments, the dynamic and/orstatic elements of an EOI may be used to identify high cognitive loadportions and/or to generate the corresponding familiarization content.Thus, various embodiments of the present invention provide animprovement to navigation and/or routing technologies.

Various embodiments of the present invention provide methods,apparatuses, systems, computer program products, and/or the like forgenerating and using a cognitive navigation model for modeling humancognitive processing of various navigation scenarios. The cognitivenavigation model enables the identification of portions of a route thatmay be stressful and/or cause a user navigating the route to experiencean increased cognitive load. In particular, the cognitive navigationmodel enables the system to provide appropriate and effectivefamiliarization content for portions of the route where providingfamiliarization content is most helpful for a user. Thus, the cognitivenavigation model improves the efficiency and effectiveness of providingfamiliarization content to a user. Thus, various embodiments of thepresent invention provide an improvement to navigation and/or routingtechnologies.

III. Example Apparatus

The network apparatus 10 and/or vehicle apparatus 20 of an exampleembodiment may be embodied by or associated with a variety of computingdevices including, for example, a navigation system including anin-vehicle navigation system, a vehicle control system, a personalnavigation device (PND) or a portable navigation device, an advanceddriver assistance system (ADAS), a global navigation satellite system(GNSS), a cellular telephone, a mobile phone, a personal digitalassistant (PDA), a watch, a camera, a computer, and/or other device thatcan perform navigation-related functions, such as digital routing andmap display. Additionally or alternatively, the network apparatus 10and/or vehicle apparatus 20 may be embodied in other types of computingdevices, such as a server, a personal computer, a computer workstation,a laptop computer, a plurality of networked computing devices or thelike, that are configured to determine and/or generate one or more EOIs,determine and/or identify portions of a route associated with increasedcognitive load for a user traversing the route, extracting and/orgenerating familiarization information/data for portions of a routeassociated with increased cognitive load, providing the familiarizationinformation/data, providing a user with an interactive user interfacefor receiving trip and/or route information/data and/or providing a userwith route information/data and/or familiarization content for theroute. In an example embodiment, a vehicle apparatus 20 is an in-vehiclenavigation system onboard a vehicle 5 or a mobile device and a networkapparatus 10 is a server. In this regard, FIG. 2A depicts an examplenetwork apparatus 10 and FIG. 2B depicts an example vehicle apparatus 20that may be embodied by various computing devices including thoseidentified above. As shown, the network apparatus 10 of an exampleembodiment may include, may be associated with, or may otherwise be incommunication with a processor 12 and a memory device 14 and optionallya communication interface 16 and/or a user interface 18. Similarly, thevehicle apparatus 20 may comprise a processor 22, memory 24, acommunications interface 26, a user interface 28, one or more locationsensors 29 (e.g., a GNSS sensor; IMU sensors; an odometry system, and/orthe like) and/or other components configured to perform variousoperations, procedures, functions or the like described herein. Forexample, in an example embodiment, a vehicle apparatus 20 may comprisefurther sensors such as, for example, a camera(s); two dimensional (2D)and/or three dimensional (3D) light detection and ranging (LiDAR)(s);long, medium, and/or short range radio detection and ranging (RADAR);ultrasonic sensors; electromagnetic sensors; (near-) infrared (IR)cameras; 3D cameras; 360° cameras; fuel level sensors; vehicle systemsensors (e.g., oil status sensors, tire pressure sensors, engine oilpressure sensors, coolant level sensors, engine/coolant temperaturesensors, and/or other sensors that enable the vehicle apparatus 20 todetermine one or more features of the corresponding vehicle's 5surroundings and/or monitor the vehicle's 5 operating parameters).

In some embodiments, the processor 12, 22 (and/or co-processors or anyother processing circuitry assisting or otherwise associated with theprocessor) may be in communication with the memory device 14, 24 via abus for passing information among components of the apparatus. Thememory device may be non-transitory and may include, for example, one ormore volatile and/or non-volatile memories. In other words, for example,the memory device may be an electronic storage device (e.g., anon-transitory computer readable storage medium) comprising gatesconfigured to store data (e.g., bits) that may be retrievable by amachine (e.g., a computing device like the processor). The memory devicemay be configured to store information, data, content, applications,instructions, or the like for enabling the apparatus to carry outvarious functions in accordance with an example embodiment of thepresent invention. For example, the memory device could be configured tobuffer input data for processing by the processor. Additionally oralternatively, the memory device could be configured to storeinstructions for execution by the processor.

As described above, the network apparatus 10 and/or vehicle apparatus 20may be embodied by a computing device. However, in some embodiments, theapparatus may be embodied as a chip or chip set. In other words, theapparatus may comprise one or more physical packages (e.g., chips)including materials, components and/or wires on a structural assembly(e.g., a baseboard). The structural assembly may provide physicalstrength, conservation of size, and/or limitation of electricalinteraction for component circuitry included thereon. The apparatus maytherefore, in some cases, be configured to implement an embodiment ofthe present invention on a single chip or as a single “system on achip.” As such, in some cases, a chip or chipset may constitute meansfor performing one or more operations for providing the functionalitiesdescribed herein.

The processor 12, 22 may be embodied in a number of different ways. Forexample, the processor 12, 22 may be embodied as one or more of varioushardware processing means such as a coprocessor, a microprocessor, acontroller, a digital signal processor (DSP), a processing element withor without an accompanying DSP, or various other processing circuitryincluding integrated circuits such as, for example, an ASIC (applicationspecific integrated circuit), an FPGA (field programmable gate array), amicrocontroller unit (MCU), a hardware accelerator, a special-purposecomputer chip, or the like. As such, in some embodiments, the processor12, 22 may include one or more processing cores configured to performindependently. A multi-core processor may enable multiprocessing withina single physical package. Additionally or alternatively, the processor12, 22 may include one or more processors configured in tandem via thebus to enable independent execution of instructions, pipelining and/ormultithreading.

In an example embodiment, the processor 12, 22 may be configured toexecute instructions stored in the memory device 14, 24 or otherwiseaccessible to the processor. Alternatively or additionally, theprocessor 12, 22 may be configured to execute hard coded functionality.As such, whether configured by hardware or software methods, or by acombination thereof, the processor may represent an entity (e.g.,physically embodied in circuitry) capable of performing operationsaccording to an embodiment of the present invention while configuredaccordingly. Thus, for example, when the processor is embodied as anASIC, FPGA or the like, the processor may be specifically configuredhardware for conducting the operations described herein. Alternatively,as another example, when the processor is embodied as an executor ofsoftware instructions, the instructions may specifically configure theprocessor to perform the algorithms and/or operations described hereinwhen the instructions are executed. However, in some cases, theprocessor may be a processor of a specific device (e.g., a pass-throughdisplay or a mobile terminal) configured to employ an embodiment of thepresent invention by further configuration of the processor byinstructions for performing the algorithms and/or operations describedherein. The processor may include, among other things, a clock, anarithmetic logic unit (ALU) and logic gates configured to supportoperation of the processor.

In some embodiments, the network apparatus 10 and/or vehicle apparatus20 may include a user interface 18, 28 that may, in turn, be incommunication with the processor 12, 22 to provide output to the user,such as one or more instances of map information/data and/or graphicalpresentations thereof, one or more routes through a road network, and/orthe output of one or more other navigation functions, and, in someembodiments, to receive an indication of a user input. As such, the userinterface may include one or more output devices such as a display,speaker, and/or the like and, in some embodiments, may also include oneor more input devices such as a keyboard, a mouse, a joystick, a touchscreen, touch areas, soft keys, a microphone, a speaker, or otherinput/output mechanisms. Alternatively or additionally, the processormay comprise user interface circuitry configured to control at leastsome functions of one or more user interface elements such as a displayand, in some embodiments, a speaker, ringer, microphone and/or the like.The processor and/or user interface circuitry comprising the processormay be configured to control one or more functions of one or more userinterface elements through computer program instructions (e.g., softwareand/or firmware) stored on a memory accessible to the processor 12, 22(e.g., memory device 14, 24 and/or the like).

The network apparatus 10 and/or vehicle apparatus 20 may further includea communication interface 16, 26. The communication interface may be anymeans such as a device or circuitry embodied in either hardware or acombination of hardware and software that is configured to receiveand/or transmit data from/to a network and/or any other device or modulein communication with the apparatus. In this regard, the communicationinterface may include, for example, an antenna (or multiple antennas)and supporting hardware and/or software for enabling communications witha wireless communication network. Additionally or alternatively, thecommunication interface may include the circuitry for interacting withthe antenna(s) to cause transmission of signals via the antenna(s) or tohandle receipt of signals received via the antenna(s). In someenvironments, the communication interface may alternatively or alsosupport wired communication. As such, for example, the communicationinterface may include a communication modem and/or otherhardware/software for supporting communication via cable, digitalsubscriber line (DSL), universal serial bus (USB) or other mechanisms.

In addition to embodying the network apparatus 10 and/or vehicleapparatus 20 of an example embodiment, a navigation system may alsoinclude or have access to a geographic database that includes a varietyof data (e.g., map information/data) utilized in constructing a route ornavigation path, determining the time to traverse the route ornavigation path, matching a geolocation (e.g., a GNSS determinedlocation) to a point on a map, a lane of a lane network, and/or link,one or more localization features and a corresponding location of eachlocalization feature, and/or the like. For example, a geographicdatabase may include road segment or link data records, point ofinterest (POI) data records, entity of interest (EOI) data records,localization feature data records, and other data records. More, feweror different data records can be provided. In one embodiment, the otherdata records include cartographic (“carto”) data records, routing data,and maneuver data. One or more portions, components, areas, layers,features, text, and/or symbols of the POI or event data can be storedin, linked to, and/or associated with one or more of these data records.For example, one or more portions of the POI, event data, or recordedroute information can be matched with respective map or geographicrecords via position or GNSS data associations (such as using known orfuture map matching or geo-coding techniques), for example. In anexample embodiment, the data records may comprise nodes, connectioninformation/data, intersection data records, link data records, POI datarecords, EOI data records, and/or other data records. In an exampleembodiment, the network apparatus 10 may be configured to modify,update, and/or the like one or more data records of the geographicdatabase. For example, the network apparatus 10 may modify, update,generate, and/or the like map information/data corresponding to links,road segments, nodes, intersection, POIs, EOIs, and/or the like and/orthe corresponding data records, a localization layer (e.g., comprisinglocalization features) and/or the corresponding data records, and/or thelike.

In an example embodiment, the road segment data records are links orsegments, e.g., maneuvers of a maneuver graph, representing roads,streets, or paths, as can be used in the calculated route or recordedroute information for determination of one or more personalized routes.The intersection data records are end points corresponding to therespective links or segments of the road segment data records. The roadlink data records and the intersection data records represent a roadnetwork, such as used by vehicles, cars, and/or other entities.Alternatively, the geographic database can contain path segment andintersection data records or nodes and connection information/data orother data that represent pedestrian paths or areas in addition to orinstead of the vehicle road record data, for example.

The road/link segments, intersections, and/or nodes can be associatedwith attributes, such as geographic coordinates, street names, addressranges, speed limits, turn restrictions at intersections, and othernavigation related attributes, as well as EOIs and/or POIs, such asgasoline stations, hotels, restaurants, museums, stadiums, offices,automobile dealerships, auto repair shops, buildings, stores, parks,etc. The geographic database can include information/data about the EOIsand/or POIs and their respective locations in the EOI and/or POI datarecords. The geographic database can also include data about places,such as cities, towns, or other communities, and other geographicfeatures, such as bodies of water, mountain ranges, etc. Such place orfeature data can be part of the EOI and/or POI information/data or canbe associated with EOIs and/or POIs or EOI and/or POI data records (suchas a data point used for displaying or representing a position of acity). In addition, the geographic database can include and/or beassociated with event data (e.g., traffic incidents, constructions,scheduled events, unscheduled events, etc.) associated with the POI datarecords, EOI data records, or other records of the geographic database.

The geographic database can be maintained by the content provider (e.g.,a map developer) in association with the services platform. By way ofexample, the map developer can collect geographic data to generate andenhance the geographic database. There can be different ways used by themap developer to collect data. These ways can include obtaining datafrom other sources, such as municipalities or respective geographicauthorities. In addition, the map developer can employ field personnelto travel by vehicle along roads throughout the geographic region toobserve features and/or record information about them, for example.Also, remote sensing, such as aerial or satellite photography, can beused. In an example embodiment, the geographic database may be generatedand/or updated based on map information/data generated and/or extractedfrom sensor information/data provided by vehicle apparatuses 20 throughthe use of update and/or notification messages. In various embodiments,the vehicle apparatuses 20 may be onboard vehicles owned and/or operatedby and/or on behalf of members of the general public or onboard vehiclesowned and/or operated as part of a private fleet.

The geographic database can be a master geographic database stored in aformat that facilitates updating, maintenance, and development. Forexample, the master geographic database or data in the master geographicdatabase can be in an Oracle spatial format or other spatial format,such as for development or production purposes. The Oracle spatialformat or development/production database can be compiled into adelivery format, such as a geographic data files (GDF) format. The datain the production and/or delivery formats can be compiled or furthercompiled to form geographic database products or databases, which can beused in end user navigation devices or systems.

For example, geographic data is compiled (such as into a platformspecification format (PSF) format) to organize and/or configure the datafor performing navigation-related functions and/or services, such asroute calculation, route guidance, map display, speed calculation,distance and travel time functions, and other functions. Thenavigation-related functions can correspond to vehicle navigation orother types of navigation. The compilation to produce the end userdatabases can be performed by a party or entity separate from the mapdeveloper. For example, a customer of the map developer, such as anavigation device developer or other end user device developer, canperform compilation on a received geographic database in a deliveryformat to produce one or more compiled navigation databases. Regardlessof the manner in which the databases are compiled and maintained, anavigation system that embodies a network apparatus 10 and/or vehicleapparatus 20 in accordance with an example embodiment may determine thetime to traverse a route that includes one or more turns at respectiveintersections more accurately.

IV. Apparatus, Methods, and Computer Program Products

As described above, FIGS. 6 and 8 illustrate flowcharts of a networkapparatus 10, methods, and computer program products according to anexample embodiment of the invention.

It will be understood that each block of the flowcharts, andcombinations of blocks in the flowcharts, may be implemented by variousmeans, such as hardware, firmware, processor, circuitry, and/or otherdevices associated with execution of software including one or morecomputer program instructions. For example, one or more of theprocedures described above may be embodied by computer programinstructions. In this regard, the computer program instructions whichembody the procedures described above may be stored by the memory device14, 24 of an apparatus employing an embodiment of the present inventionand executed by the processor 12, 22 of the apparatus. As will beappreciated, any such computer program instructions may be loaded onto acomputer or other programmable apparatus (e.g., hardware) to produce amachine, such that the resulting computer or other programmableapparatus implements the functions specified in the flowchart blocks.These computer program instructions may also be stored in acomputer-readable memory that may direct a computer or otherprogrammable apparatus to function in a particular manner, such that theinstructions stored in the computer-readable memory produce an articleof manufacture the execution of which implements the function specifiedin the flowchart blocks. The computer program instructions may also beloaded onto a computer or other programmable apparatus to cause a seriesof operations to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions which execute on the computer or other programmableapparatus provide operations for implementing the functions specified inthe flowchart blocks.

Accordingly, blocks of the flowcharts support combinations of means forperforming the specified functions and combinations of operations forperforming the specified functions for performing the specifiedfunctions. It will also be understood that one or more blocks of theflowcharts, and combinations of blocks in the flowcharts, can beimplemented by special purpose hardware-based computer systems whichperform the specified functions, or combinations of special purposehardware and computer instructions.

In some embodiments, certain ones of the operations above may bemodified or further amplified. Furthermore, in some embodiments,additional optional operations may be included. Modifications,additions, simplifications, or amplifications to the operations abovemay be performed in any order and in any combination.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of the appended claims.Moreover, although the foregoing descriptions and the associateddrawings describe example embodiments in the context of certain examplecombinations of elements and/or functions, it should be appreciated thatdifferent combinations of elements and/or functions may be provided byalternative embodiments without departing from the scope of the appendedclaims. In this regard, for example, different combinations of elementsand/or functions than those explicitly described above are alsocontemplated as may be set forth in some of the appended claims.Although specific terms are employed herein, they are used in a genericand descriptive sense only and not for purposes of limitation.

That which is claimed:
 1. A method comprising: receiving, via a networkapparatus comprising at least one processor, at least one memory, and atleast one communication interface configured to communicate via at leastone network, navigation data, the navigation data comprising a pluralityof point of interest (POI) models, each POI model being a representationof a POI; analyzing, via the network apparatus, at least a portion ofthe plurality of POI models based on a data extraction model todetermine a link between two or more POIs based on POI modelscorresponding to the two or more POIs, wherein the two or more POIs arelocated within a predefined distance of one another; generating, via thenetwork apparatus, an entity of interest (EOI) model based on the POImodels corresponding to the two or more POIs, the determined link, andthe data extraction model; and storing, via the network apparatus, theEOI model for use in performing one or more navigation functions.
 2. Themethod of claim 1, wherein the link is one or more relationships betweenthe two or more POIs that are determined based on human behavior orinterest criteria.
 3. The method of claim 2, wherein the data extractionmodel is a cognitive navigation model and the human behavior or interestcriteria is determined by the cognitive navigation model.
 4. The methodof claim 1, wherein at least one POI model comprises a POI dynamicelement and the link between the two or more POIs is based at least inpart on the dynamic element.
 5. The method of claim 4, wherein the EOImodel comprises an EOI dynamic element determined based at least in parton the POI dynamic element.
 6. The method of claim 4, wherein the POIdynamic element is updated in real-time or near real-time.
 7. The methodof claim 1, wherein the EOI model is used to identify a high cognitiveload portion of a route.
 8. The method of claim 1, further comprisingaccessing the EOI model from a computer-readable memory and using theEOI model to perform a navigation function.
 9. An apparatus comprisingat least one processor, at least one non-transitory memory storingcomputer program code, and at least one communications interfaceconfigured to communicate via at least one network, the computer programcode configured to, when executed by the at least one processor, causethe apparatus to at least: receive navigation data, the navigation datacomprising a plurality of point of interest (POI) models, each POI modelbeing a representation of a POI; analyze at least a portion of theplurality of POI models based on a data extraction model to determine alink between two or more POIs based on POI models corresponding to thetwo or more POIs, wherein the two or more POIs are located within apredefined distance of one another; generate an entity of interest (EOI)model based on the POI models corresponding to the two or more POIs, thedetermined link, and the data extraction model; and store the EOI modelfor use in performing one or more navigation functions.
 10. Theapparatus of claim 9, wherein the link is one or more relationshipsbetween the two or more POIs that are determined based on human behavioror interest criteria.
 11. The apparatus of claim 10, wherein the dataextraction model is a cognitive navigation model and the human behavioror interest criteria is determined by the cognitive navigation model.12. The apparatus of claim 9, wherein at least one POI model comprises aPOI dynamic element and the link between the two or more POIs is basedat least in part on the dynamic element.
 13. The apparatus of claim 12,wherein the EOI model comprises an EOI dynamic element determined basedat least in part on the POI dynamic element.
 14. The apparatus of claim12, wherein the POI dynamic element is updated in real-time or nearreal-time.
 15. The apparatus of claim 9, wherein the EOI model is usedto identify a high cognitive load portion of a route.
 16. A computerprogram product comprising at least one non-transitory computer-readablestorage medium having computer-executable program code instructionsstored therein with the computer-executable program code instructionscomprising program code instructions configured to, when executed by aprocessor of an apparatus, cause the apparatus to at least: receivenavigation data, the navigation data comprising a plurality of point ofinterest (POI) models, each POI model being a representation of a POI;analyze at least a portion of the plurality of POI models based on adata extraction model to determine a link between two or more POIs basedon POI models corresponding to the two or more POIs, wherein the two ormore POIs are located within a predefined distance of one another;generate an entity of interest (EOI) model based on the POI modelscorresponding to the two or more POIs, the determined link, and the dataextraction model; and store the EOI model for use in performing one ormore navigation functions.
 17. The computer program product of claim 16,wherein the link is one or more relationships between the two or morePOIs that are determined based on human behavior or interest criteria.18. The computer program product of claim 17, wherein the dataextraction model is a cognitive navigation model and the human behavioror interest criteria is determined by the cognitive navigation model.19. The computer program product of claim 16, wherein at least one POImodel comprises a POI dynamic element and the link between the two ormore POIs is based at least in part on the dynamic element.
 20. Thecomputer program product of claim 19, wherein the EOI model comprises anEOI dynamic element determined based at least in part on the POI dynamicelement.